home *** CD-ROM | disk | FTP | other *** search
/ TeX 1995 July / TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO / graphics / gnuplot / docs / gnuplot.doc < prev    next >
Text File  |  1993-09-15  |  130KB  |  3,632 lines

  1. 1 gnuplot
  2. ?
  3.  GNUPLOT is a command-driven interactive function plotting program.
  4.  
  5.  For help on any topic, type `help` followed by the name of the topic.
  6.  
  7.  The new GNUPLOT user should begin by reading the `introduction` topic
  8.  (type `help introduction`) and about the `plot` command (type `help plot`).
  9.  Additional help can be obtained from the USENET newsgroup
  10.  comp.graphics.gnuplot.
  11.  
  12. 2 copyright
  13. ?copyright
  14.       Copyright (C) 1986 - 1993   Thomas Williams, Colin Kelley
  15.  
  16.    Permission to use, copy, and distribute this software and its
  17.    documentation for any purpose with or without fee is hereby granted,
  18.    provided that the above copyright notice appear in all copies and
  19.    that both that copyright notice and this permission notice appear
  20.    in supporting documentation.
  21.  
  22.    Permission to modify the software is granted, but not the right to
  23.    distribute the modified code.  Modifications are to be distributed
  24.    as patches to released version.
  25.  
  26.    This software is provided "as is" without express or implied warranty.
  27.  
  28.  
  29.    AUTHORS
  30.  
  31.      Original Software:
  32.        Thomas Williams,  Colin Kelley.
  33.  
  34.      Gnuplot 2.0 additions:
  35.          Russell Lang, Dave Kotz, John Campbell.
  36.  
  37.      Gnuplot 3.0 additions:
  38.          Gershon Elber and many others.
  39.  
  40.    There is a mailing list for gnuplot users. Note, however, that the
  41.    newsgroup 
  42.          comp.graphics.gnuplot 
  43.    is identical to the mailing list (they
  44.    both carry the same set of messages). We prefer that you read the
  45.    messages through that newsgroup, to subscribing to the mailing list.
  46.    (If you can read that newsgroup, and are already on the mailing list,
  47.    please send a message info-gnuplot-request@dartmouth.edu, asking to be
  48.    removed from the mailing list.)
  49.  
  50.    The address for mailing to list members is
  51.          info-gnuplot@dartmouth.edu
  52.    and for mailing administrative requests is 
  53.          info-gnuplot-request@dartmouth.edu
  54.    The mailing list for bug reports is 
  55.          bug-gnuplot@dartmouth.edu
  56.    The list of those interested in beta-test versions is
  57.          info-gnuplot-beta@dartmouth.edu
  58.  
  59. 2 introduction
  60. ?introduction
  61.  GNUPLOT is a command-driven interactive function plotting program.
  62.  It is case sensitive (commands and function names written in lowercase
  63.  are not the same as those written in CAPS). All command names may be
  64.  abbreviated, as long as the abbreviation is not ambiguous. Any number
  65.  of commands may appear on a line, separated by semicolons (;).
  66.  Strings are indicated with quotes.  They may be either single or double
  67.  quotation marks, e.g.,
  68.  
  69.           load "filename"
  70.           cd 'dir'
  71.  
  72.  Any command-line arguments are assumed to be names of files containing
  73.  GNUPLOT commands, with the exception of standard X11 arguments, which
  74.  are processed first. Each file is loaded with the `load` command, in the
  75.  order specified. GNUPLOT exits after the last file is processed.  When
  76.  no load files are named, gnuplot enters into an interactive mode.
  77.  
  78.  Commands may extend over several input lines, by ending each
  79.  line but the last with a backslash (\). The backslash must be the LAST
  80.  character on each line. The effect is as if the backslash and newline
  81.  were not there. That is, no white space is implied, nor is a comment
  82.  terminated. Therefore, commenting out a continued line comments out
  83.  the entire command (see `comment`).
  84.  
  85.  In this documentation, curly braces ({}) denote optional arguments to
  86.  many commands, and a vertical bar (|) separates mutually exclusive
  87.  choices.  GNUPLOT keywords or help topics are indicated by backquotes
  88.  or `boldface` (where available).  Angle brackets (<>) are used to mark
  89.  replaceable tokens.
  90.  
  91.  For help on any topic, type `help` followed by the name of the topic.
  92.  
  93.  The new GNUPLOT user should begin by reading about the `plot`
  94.  command (type `help plot`).
  95. 2 cd
  96. ?cd
  97.  The `cd` command changes the working directory.
  98.  
  99.  Syntax:
  100.          cd "<directory-name>"
  101.  
  102.  The directory name must be enclosed in quotes.
  103.  
  104.  Examples:
  105.          cd 'subdir'
  106.          cd ".."
  107. 2 clear
  108. ?clear
  109.  The `clear` command erases the current screen or output device as
  110.  specified by `set output`. This usually generates a formfeed on
  111.  hardcopy devices. Use `set terminal` to set the device type.
  112. 2 command line-editing
  113. ?line-editing
  114. ?editing
  115. ?history
  116. ?command line-editing
  117.  The Unix, Atari, VMS, MS-DOS and OS/2 versions of GNUPLOT support command
  118.  line-editing.  Also, a history mechanism allows previous commands to be
  119.  edited, and re-executed. After the command line has been edited, a newline
  120.  or carriage return will enter the entire line regardless of where the
  121.  cursor is positioned.
  122.  
  123.  The editing commands are as follows:
  124.  
  125. @start table - first is interactive cleartext form
  126.   `Line-editing`:
  127.  
  128.   ^B moves back a single character.
  129.   ^F moves forward a single character.
  130.   ^A moves to the beginning of the line.
  131.   ^E moves to the end of the line.
  132.   ^H and DEL delete the previous character.
  133.   ^D deletes the current character.
  134.   ^K deletes from current position to the end of line.
  135.   ^L,^R redraws line in case it gets trashed.
  136.   ^U deletes the entire line.
  137.   ^W deletes the last word.
  138.  
  139.   `History`:
  140.  
  141.   ^P moves back through history.
  142.   ^N moves forward through history.
  143. #Character && Function \\ \hline
  144. #\multicolumn{3}{|c|}{Line Editing}\\
  145. #\verb~^B~ && move back a single character.\\
  146. #\verb~^F~ && move forward a single character.\\
  147. #\verb~^A~ && move to the beginning of the line.\\
  148. #\verb~^E~ && move to the end of the line.\\
  149. #\verb~^H, DEL~ && delete the previous character.\\
  150. #\verb~^D~ && delete the current character.\\
  151. #\verb~^K~ && delete from current position to the end of line.\\
  152. #\verb~^L, ^R~ && redraw line in case it gets trashed.\\
  153. #\verb~^U~ && delete the entire line. \\
  154. #\verb~^W~ && delete from the current word to the end of line. \\ \hline
  155. #\multicolumn{3}{|c|}{History} \\
  156. #\verb~^P~ && move back through history.\\
  157. #\verb~^N~ && move forward through history.\\
  158. %Character@@Function
  159. %_
  160. %@@Line Editing
  161. %^B@@move back a single character.
  162. %^F@@move forward a single character.
  163. %^A@@move to the beginning of the line.
  164. %^E@@move to the end of the line.
  165. %^H, DEL@@delete the previous character.
  166. %^D@@delete the current character.
  167. %^K@@delete from current position to the end of line.
  168. %^L, ^R@@redraw line in case it gets trashed.
  169. %^U@@delete the entire line.
  170. %^W@@delete from the current word to the end of line.
  171. %_
  172. %@@History
  173. %^P@@move back through history.
  174. %^N@@move forward through history.
  175. @end table
  176.  
  177.  On the IBM PC the use of a TSR program such as DOSEDIT or CED may be
  178.  desired for line editing. For such a case GNUPLOT may be compiled with
  179.  no line editing capability (default makefile setup). Set READLINE in the
  180.  makefile and add readline.obj to the link file if GNUPLOT line editing
  181.  is to be used for the IBM PC. The following arrow keys may be used
  182.  on the IBM PC and Atari versions if readline is used:
  183.  
  184. @start table - first is interactive cleartext form
  185.   Left  Arrow     - same as ^B.
  186.   Right Arrow     - same as ^F.
  187.   Ctl Left  Arrow - same as ^A.
  188.   Ctl Right Arrow - same as ^E.
  189.   Up    Arrow     - same as ^P.
  190.   Down  Arrow     - same as ^N.
  191. #Arrow key & Function & \\ \hline
  192. #Left      & same as \verb~^B~. & \\
  193. #Right     & same as \verb~^F~. & \\
  194. #Ctl Left  & same as \verb~^A~. & \\
  195. #Ctl Right & same as \verb~^E~. & \\
  196. #Up        & same as \verb~^P~. & \\
  197. #Down      & same as \verb~^N~. & \\
  198. %Arrow key@@Function
  199. %_
  200. %Left Arrow@@same as ^B.
  201. %Right Arrow@@same as ^F.
  202. %Ctl Left Arrow@@same as ^A.
  203. %Ctl Right Arrow@@same as ^E.
  204. %Up Arrow@@same as ^P.
  205. %Down Arrow@@same as ^N.
  206. %_
  207. @end table
  208.  
  209.  The Atari version of readline defines some additional key aliases:
  210.  
  211. @start table - first is interactive cleartext form
  212.   Undo            - same as ^L.
  213.   Home            - same as ^A.
  214.   Ctrl Home       - same as ^E.
  215.   ESC             - same as ^U.
  216.   Help            - `help' plus return.
  217.   Ctrl Help       - `help '.
  218. #Arrow key & Function & \\ \hline
  219. #Undo      & same as \verb~^L~. & \\
  220. #Home      & same as \verb~^A~. & \\
  221. #Ctrl Home & same as \verb~^E~. & \\
  222. #ESC       & same as \verb~^U~. & \\
  223. #Help      & `{\bf help}' plus return. & \\
  224. #Ctrl Help & `{\bf help }'. & \\
  225. %Arrow key@@Function
  226. %_
  227. %Undo@@same as ^L.
  228. %Home@@same as ^A.
  229. %Ctrl Home@@same as ^E.
  230. %ESC@@same as ^U.
  231. %Help@@help plus return.
  232. %Ctrl Help@@help .
  233. %_
  234. @end table
  235.  
  236.  (The readline function in gnuplot is not the same as the readline used
  237.  in GNU BASH and GNU EMACS.  It is somewhat compatible however.)
  238. 2 comment
  239. ?comments
  240.  Comments are supported as follows: a # may appear in most places in a line
  241.  and GNUPLOT will ignore the rest of the line. It will not have this
  242.  effect inside quotes, inside numbers (including complex numbers), inside
  243.  command substitutions, etc. In short, it works anywhere it makes sense
  244.  to work.
  245. 2 environment
  246. ?environment
  247.  A number of shell environment variables are understood by GNUPLOT.
  248.  None of these are required, but may be useful.
  249.  
  250.  If GNUTERM is defined, it is used as the name of the terminal type to
  251.  be used. This overrides any terminal type sensed by GNUPLOT on start
  252.  up, but is itself overridden by the .gnuplot (or equivalent) start-up
  253.  file (see `start-up`), and of course by later explicit changes.
  254.  
  255.  On Unix, AmigaDOS, AtariTOS, MS-DOS and OS/2, GNUHELP may be defined
  256.  to be the pathname of the HELP file (gnuplot.gih).
  257.  
  258.  On VMS, the symbol GNUPLOT$HELP should be defined as the name of
  259.  the help library for GNUPLOT.
  260.  
  261.  On Unix, HOME is used as the name of a directory to search for
  262.  a .gnuplot file if none is found in the current directory.
  263.  On AmigaDOS, AtariTOS, MS-DOS and OS/2, GNUPLOT is used. On VMS, SYS$LOGIN:
  264.  is used. See `help start-up`.
  265.  
  266.  On Unix, PAGER is used as an output filter for help messages.
  267.  
  268.  On Unix, AtariTOS and AmigaDOS, SHELL is used for the `shell` command.
  269.  On MS-DOS and OS/2, COMSPEC is used for the `shell` command.
  270.  
  271.  On AmigaDOS, GNUFONT is used for the screen font.  For example:
  272.  "setenv GNUFONT sapphire/14".
  273.  
  274.  On MS-DOS, if the BGI interface is used, the variable `BGI` is used to point
  275.  to the full path of the BGI drivers directory. Furthermore SVGA is used to
  276.  name the Super VGA BGI driver in 800x600 res., and its mode of operation
  277.  as 'Name.Mode'.
  278.  E.g., if the Super VGA driver is C:\TC\BGI\SVGADRV.BGI and mode 3 is
  279.  used for 800x600 res., then: 'set BGI=C:\TC\BGI' and 'set SVGA=SVGADRV.3'.
  280. 2 exit
  281. ?exit
  282. ?quit
  283.  The commands `exit` and `quit` and the END-OF-FILE character
  284.  will exit GNUPLOT. All these commands will clear the output device
  285.  (as the `clear` command does) before exiting.
  286. 2 expressions
  287. ?expressions
  288.  In general, any mathematical expression accepted by C, FORTRAN,
  289.  Pascal, or BASIC is valid. The precedence of these operators is
  290.  determined by the specifications of the C programming language.
  291.  White space (spaces and tabs) is ignored inside expressions.
  292.  
  293.  Complex constants may be expressed as the {<real>,<imag>}, where <real>
  294.  and <imag> must be numerical constants. For example, {3,2}
  295.  represents 3 + 2i; {0,1} represents `i` itself. The curly braces
  296.  are explicitly required here.
  297. 3 functions
  298. ?expressions functions
  299. ?functions
  300.  The functions in GNUPLOT are the same as the corresponding functions
  301.  in the Unix math library, except that all functions accept integer,
  302.  real, and complex arguments, unless otherwise noted. The `sgn`
  303.  function is also supported, as in BASIC.
  304. @start table
  305. #Function & Arguments & Returns \\ \hline
  306. %Function@Arguments@Returns
  307. %_
  308. 4 abs
  309. ?expressions functions abs
  310. ?functions abs
  311. ?abs
  312. #abs(x) & any  &  absolute value of {\tt x}, $|x|$; same type \\
  313. #abs(x) & complex &  length of {\tt x}, $\sqrt{{\mbox{real}(x)^{2} +
  314. #\mbox{imag}(x)^{2}}}$ \\
  315. %abs(x)@any@absolute value of x, $|x|$; same type
  316. %abs(x)@complex@length of x, $sqrt{roman real (x) sup 2 + roman imag (x) sup 2}$
  317.  The `abs` function returns the absolute value of its argument. The
  318.  returned value is of the same type as the argument.
  319.  
  320.  For complex arguments, abs(x) is defined as the length of x in the
  321.  complex plane [i.e.,  sqrt(real(x)**2 + imag(x)**2) ].
  322. 4 acos
  323. ?expressions functions acos
  324. ?functions acos
  325. ?acos
  326. #acos(x) & any  & $\cos^{-1} x$ (inverse cosine) in radians \\
  327. %acos(x)@any@$cos sup -1 x$ (inverse cosine) in radians
  328.  The `acos` function returns the arc cosine (inverse cosine) of its
  329.  argument. `acos` returns its argument in radians.
  330. 4 arg
  331. ?expressions functions arg
  332. ?functions arg
  333. ?arg
  334. #arg(x) & complex & the phase of $x$ in radians\\
  335. %arg(x)@complex@the phase of $x$ in radians
  336.  The `arg` function returns the phase of a complex number, in radians.
  337. 4 asin
  338. ?expressions functions asin
  339. ?functions asin
  340. ?asin
  341. #asin(x) & any  & $\sin^{-1} x$ (inverse sin) in radians \\
  342. %asin(x)@any@$sin sup -1 x$ (inverse sin) in radians
  343.  The `asin` function returns the arc sin (inverse sin) of its argument.
  344.  `asin` returns its argument in radians.
  345. 4 atan
  346. ?expressions functions atan
  347. ?functions atan
  348. ?atan
  349. #atan(x) & any  & $\tan^{-1} x$ (inverse tangent) in radians \\
  350. %atan(x)@any@$tan sup -1 x$ (inverse tangent) in radians
  351.  The `atan` function returns the arc tangent (inverse tangent) of its
  352.  argument. `atan` returns its argument in radians.
  353. 4 besj0
  354. ?expressions functions besj0
  355. ?functions besj0
  356. ?besj0
  357. #besj0(x) & radians &  $j_{0}$ Bessel function of $x$ \\
  358. %besj0(x)@radians@$j sub 0$ Bessel function of $x$
  359.  The `besj0` function returns the j0th Bessel function of its argument.
  360.  `besj0` expects its argument to be in radians.
  361. 4 besj1
  362. ?expressions functions besj1
  363. ?functions besj1
  364. ?besj1
  365. #besj1(x) & radians & $j_{1}$ Bessel function of $x$ \\
  366. %besj1(x)@radians@$j sub 1$ Bessel function of $x$
  367.  The `besj1` function returns the j1st Bessel function of its argument.
  368.  `besj1` expects its argument to be in radians.
  369. 4 besy0
  370. ?expressions functions besy0
  371. ?functions besy0
  372. ?besy0
  373. #besy0(x) & radians & $y_{0}$ Bessel function of $x$ \\
  374. %besy0(x)@radians@$y sub 0$ Bessel function of $x$
  375.  The `besy0` function returns the y0th Bessel function of its argument.
  376.  `besy0` expects its argument to be in radians.
  377. 4 besy1
  378. ?expressions functions besy1
  379. ?functions besy1
  380. ?besy1
  381. #besy1(x) & radians & $y_{1}$ Bessel function of $x$ \\
  382. %besy1(x)@radians@$y sub 1$ Bessel function of $x$
  383.  The `besy1` function returns the y1st Bessel function of its argument.
  384.  `besy1` expects its argument to be in radians.
  385. 4 ceil
  386. ?expressions functions ceil
  387. ?functions ceil
  388. ?ceil
  389. #ceil(x) & any & $\lceil x \rceil$, smallest integer not less than $x$
  390. #(real part) \\
  391. %ceil(x)@any@$left ceiling x right ceiling$, smallest integer not less than $x$ (real part)
  392.  The `ceil` function returns the smallest integer that is not less than its
  393.  argument. For complex numbers, `ceil` returns the smallest integer
  394.  not less than the real part of its argument.
  395. 4 cos
  396. ?expressions functions cos
  397. ?functions cos
  398. ?cos
  399. #cos(x) & radians & $\cos x$, cosine of $x$ \\
  400. %cos(x)@radians@$cos~x$, cosine of $x$
  401.  The `cos` function returns the cosine of its argument. `cos` expects its
  402.  argument to be in radians.
  403. 4 cosh
  404. ?expressions functions cosh
  405. ?functions cosh
  406. ?cosh
  407. #cosh(x) & radians & $\cosh x$, hyperbolic cosine of $x$ \\
  408. %cosh(x)@radians@$cosh~x$, hyperbolic cosine of $x$
  409.  The `cosh` function returns the hyperbolic cosine of its argument.
  410.  `cosh` expects its argument to be in radians.
  411. 4 erf
  412. ?expressions functions erf
  413. ?functions erf
  414. ?erf
  415. #erf(x) & any & $\mbox{Erf}(\mbox{real}(x))$,  error function of real($x$) \\
  416. %erf(x)@any@$erf ( roman real (x))$, error function of real ($x$)
  417.  The `erf` function returns the error function of the real part of
  418.  its argument.
  419.  If the argument is a complex value, the imaginary component is ignored.
  420. 4 erfc
  421. ?expressions functions erfc
  422. ?functions erfc
  423. ?erfc
  424. #erfc(x) & any & $\mbox{Erfc}(\mbox{real}(x))$,  1.0 - error function of real($x$) \\
  425. %erfc(x)@any@$erfc ( roman real (x))$, 1.0 - error function of real ($x$)
  426.  The `erfc` function returns 1.0 - the error function of the
  427.  real part of its argument.
  428.  If the argument is a complex value, the imaginary component is ignored.
  429. 4 exp
  430. ?expressions functions exp
  431. ?functions exp
  432. ?exp
  433. #exp(x) & any & $e^{x}$,  exponential function of $x$ \\
  434. %exp(x)@any@$e sup x$, exponential function of $x$
  435.  The `exp` function returns the exponential function of its argument
  436.  (`e` raised to the power of its argument).
  437. 4 floor
  438. ?expressions functions floor
  439. ?functions floor
  440. ?floor
  441. #floor(x) & any & $\lfloor x \rfloor$,  largest integer not greater
  442. #than $x$ (real part) \\
  443. %floor(x)@any@$left floor x right floor$, largest integer not greater than $x$ (real part)
  444.  The `floor` function returns the largest integer not greater than its
  445.  argument. For complex numbers, `floor` returns the largest
  446.  integer not greater than the real part of its argument.
  447. 4 gamma
  448. ?expressions functions gamma
  449. ?functions gamma
  450. ?gamma
  451. #gamma(x) & any & $\mbox{Gamma}(\mbox{real}(x))$,  gamma function of real($x$) \\
  452. %gamma(x)@any@$GAMMA ( roman real (x))$, gamma function of real ($x$)
  453.  The `gamma` function returns the gamma function of the real part of
  454.  its argument. For integer n, gamma(n+1) = n! .
  455.  If the argument is a complex value, the imaginary component is ignored.
  456. 4 ibeta
  457. ?expressions functions ibeta
  458. ?functions ibeta
  459. ?ibeta
  460. #ibeta(p,q,x) & any & $\mbox{Ibeta}(\mbox{real}(p,q,x))$,  ibeta function of real($p$,$q$,$x$) \\
  461. %ibeta(p,q,x)@any@$Ibeta ( roman real (p,q,x))$, ibeta function of real ($p$,$q$,$x$)
  462.  The `ibeta` function returns the incomplete beta function of the real
  463.  parts of its arguments. p, q > 0 and x in [0:1]
  464.  If the arguments are complex, the imaginary components are ignored.
  465. 4 inverf
  466. ?expressions functions inverf
  467. ?functions inverf
  468. ?inverf
  469. #inverf(x) & any &  inverse error function of real($x$)  \\
  470. %inverf(x)@any@inverse error function real($x$)
  471.  The `inverf` function returns the inverse error function of the real
  472.  part of its argument.
  473. 4 igamma
  474. ?expressions functions igamma
  475. ?functions igamma
  476. ?igamma
  477. #igamma(a,x) & any & $\mbox{Igamma}(\mbox{real}(a,x))$,  igamma function of real($a$,$x$) \\
  478. %igamma(a,x)@any@$Igamma ( roman real (a,x))$, igamma function of real ($a$,$x$)
  479.  The `igamma` function returns the incomplete gamma function of the real
  480.  parts of its arguments. a > 0 and x >= 0
  481.  If the arguments are complex, the imaginary components are ignored.
  482. 4 imag
  483. ?expressions functions imag
  484. ?functions imag
  485. ?imag
  486. #imag(x) & complex &  imaginary part of $x$ as a real number \\
  487. %imag(x)@complex@imaginary part of $x$ as a real number
  488.  The `imag` function returns the imaginary part of its argument as a
  489.  real number.
  490. 4 invnorm
  491. ?expressions functions invnorm
  492. ?functions invnorm
  493. ?invnorm
  494. #invnorm(x) & any &  inverse normal distribution function of real($x$)  \\
  495. %invnorm(x)@any@inverse normal distribution function real($x$)
  496.  The `invnorm` function returns the inverse normal distribution function
  497.  of the real part of its argument.
  498. 4 int
  499. ?expressions functions int
  500. ?functions int
  501. ?int
  502. #int(x) & real &  integer part of $x$, truncated toward zero \\
  503. %int(x)@real@integer part of $x,$ truncated toward zero
  504.  The `int` function returns the integer part of its argument, truncated
  505.  toward zero.
  506. 4 lgamma
  507. ?expressions functions lgamma
  508. ?functions lgamma
  509. ?lgamma
  510. #lgamma(x) & any & $\mbox{Lgamma}(\mbox{real}(x))$,  lgamma function of real($x$) \\
  511. %lgamma(x)@any@$Lgamma ( roman real (x))$, lgamma function of real ($x$)
  512.  The `lgamma` function returns the natural logarithm of the gamma
  513.  function of the real part of its argument.
  514.  If the argument is a complex value, the imaginary component is ignored.
  515. 4 log
  516. ?expressions functions log
  517. ?functions log
  518. ?log
  519. #log(x) & any & $\log_{e} x$,  natural logarithm (base $e$) of $x$ \\
  520. %log(x)@any@$ln~x$, natural logarithm (base $e$) of $x$
  521.  The `log` function returns the natural logarithm (base `e`) of its
  522.  argument.
  523. 4 log10
  524. ?expressions functions log10
  525. ?functions log10
  526. ?log10
  527. #log10(x) & any & $\log_{10} x$,  logarithm (base $10$) of $x$ \\
  528. %log10(x)@any@${log sub 10}~x$, logarithm (base $10$) of $x$
  529.  The `log10` function returns the logarithm (base 10) of its argument.
  530. 4 norm
  531. ?expressions functions norm
  532. ?functions norm
  533. ?norm
  534. #norm(x) & any & normal distribution (Gaussian) function of real($x$) \\
  535. %norm(x)@any@$norm(x),$ normal distribution function of real($x$)
  536.  The `norm` function returns the normal distribution function
  537.  (or Gaussian) of the real part of its argument.
  538. 4 rand
  539. ?expressions functions rand
  540. ?functions rand
  541. ?rand
  542. #rand(x) & any & $\mbox{Rand}(\mbox{real}(x))$,  pseudo random number generator \\
  543. %rand(x)@any@$rand ( roman real (x))$, pseudo random number generator
  544.  The `rand` function returns a pseudo random number in the interval [0:1]
  545.  using the real part of its argument as a seed. If seed < 0 the sequence
  546.  is (re)initialized.
  547.  If the argument is a complex value, the imaginary component is ignored.
  548. 4 real
  549. ?expressions functions real
  550. ?functions real
  551. ?real
  552. #real(x) & any &  real part of $x$ \\
  553. %real(x)@any@real part of $x$
  554.  The `real` function returns the real part of its argument.
  555. 4 sgn
  556. ?expressions functions sgn
  557. ?functions sgn
  558. ?sgn
  559. #sgn(x) & any & 1 if $x>0$, -1 if $x<0$, 0 if $x=0$. imag($x$) ignored \\
  560. %sgn(x)@any@1 if $x > 0$, -1 if $x < 0$, 0 if $x = 0$. $roman imag (x)$ ignored
  561.  The `sgn` function returns 1 if its argument is positive, -1 if its
  562.  argument is negative, and 0 if its argument is 0. If the argument
  563.  is a complex value, the imaginary component is ignored.
  564. 4 sin
  565. ?expressions functions sin
  566. ?functions sin
  567. ?sin
  568. #sin(x) & radians & $\sin x$, sine of $x$ \\
  569. %sin(x)@radians@$sin~x$, sine of $x$
  570.  The `sin` function returns the sine of its argument. `sin` expects its
  571.  argument to be in radians.
  572. 4 sinh
  573. ?expressions functions sinh
  574. ?functions sinh
  575. ?sinh
  576. #sinh(x) & radians & $\sinh x$, hyperbolic sine $x$ \\
  577. %sinh(x)@radians@$sinh~x$, hyperbolic sine $x$
  578.  The `sinh` function returns the hyperbolic sine of its argument. `sinh`
  579.  expects its argument to be in radians.
  580. 4 sqrt
  581. ?expressions functions sqrt
  582. ?functions sqrt
  583. ?sqrt
  584. #sqrt(x) & any & $\sqrt{x}$,  square root of $x$ \\
  585. %sqrt(x)@any@$sqrt x $, square root of $x$
  586.  The `sqrt` function returns the square root of its argument.
  587. 4 tan
  588. ?expressions functions tan
  589. ?functions tan
  590. ?tan
  591. #tan(x) & radians & $\tan x$,  tangent of $x$ \\
  592. %tan(x)@radians@$tan~x$, tangent of $x$
  593.  The `tan` function returns the tangent of its argument. `tan` expects
  594.  its argument to be in radians.
  595. 4 tanh
  596. ?expressions functions tanh
  597. ?functions tanh
  598. ?tanh
  599. #tanh(x) & radians & $\tanh x$, hyperbolic tangent of $x$\\
  600. %tanh(x)@radians@$tanh~x$, hyperbolic tangent of $x$
  601.  The `tanh` function returns the hyperbolic tangent of its argument.
  602.  `tanh` expects its argument to be in radians.
  603. @end table
  604. 3 operators
  605. ?expressions operators
  606. ?operators
  607.  The operators in GNUPLOT are the same as the corresponding operators
  608.  in the C programming language, except that all operators accept
  609.  integer, real, and complex arguments, unless otherwise noted.
  610.  The ** operator (exponentiation) is supported, as in FORTRAN.
  611.  
  612.  Parentheses may be used to change order of evaluation.
  613. 4 binary
  614. ?expressions operators binary
  615. ?operators binary
  616. ?binary
  617.  The following is a list of all the binary operators and their
  618.  usages:
  619.  
  620. @start table - first is interactive cleartext form
  621.   Symbol      Example      Explanation
  622.    **          a**b          exponentiation
  623.    *           a*b           multiplication
  624.    /           a/b           division
  625.    %           a%b         * modulo
  626.    +           a+b           addition
  627.    -           a-b           subtraction
  628.    ==          a==b          equality
  629.    !=          a!=b          inequality
  630.    &           a&b         * bitwise AND
  631.    ^           a^b         * bitwise exclusive OR
  632.    |           a|b         * bitwise inclusive OR
  633.    &&          a&&b        * logical AND
  634.    ||          a||b        * logical OR
  635.    ?:          a?b:c       * ternary operation
  636. #\multicolumn{3}{|c|}{Binary Operators} \\
  637. #Symbol & Example & Explanation \\ \hline
  638. #\verb~**~ & \verb~a**b~ & exponentiation\\
  639. #\verb~*~ & \verb~a*b~ & multiplication\\
  640. #\verb~/~ & \verb~a/b~ & division\\
  641. #\verb~%~ & \verb~a%b~ & * modulo\\
  642. #\verb~+~ & \verb~a+b~ & addition\\
  643. #\verb~-~ & \verb~a-b~ & subtraction\\
  644. #\verb~==~ & \verb~a==b~ & equality\\
  645. #\verb~!=~ & \verb~a!=b~ & inequality\\
  646. #\verb~&~ & \verb~a&b~ & * bitwise AND\\
  647. #\verb~^~ & \verb~a^b~ & * bitwise exclusive OR\\
  648. #\verb~|~ & \verb~a|b~ & * bitwise inclusive OR\\
  649. #\verb~&&~ & \verb~a&&b~ & * logical AND\\
  650. #\verb~||~ & \verb~a||b~ & * logical OR\\
  651. #\verb~?:~ & \verb~a?b:c~ & * ternary operation\\
  652. %Symbol@Example@Explanation
  653. %_
  654. %**@a**b@exponentiation
  655. %*@a*b@multiplication
  656. %/@a/b@division
  657. %%@a%b@* modulo
  658. %+@a+b@addition
  659. %-@a-b@subtraction
  660. %==@a==b@equality
  661. %!=@a!=b@inequality
  662. %&@a&b@* bitwise AND
  663. %^@a^b@* bitwise exclusive OR
  664. %|@a|b@* bitwise inclusive OR
  665. %&&@a&&b@* logical AND
  666. %||@a||b@* logical OR
  667. %?:@a?b:c@* ternary operation
  668.  
  669. @end table
  670.  (*) Starred explanations indicate that the operator requires
  671.  integer arguments.
  672.  
  673.  Logical AND (&&) and OR (||) short-circuit the way they do in C.
  674.  That is, the second && operand is not evaluated if the first is
  675.  false; the second || operand is not evaluated if the first is true.
  676.  
  677.  The ternary operator evaluates its first argument (a). If it is
  678.  true (non-zero) the second argument (b) is evaluated and returned,
  679.  otherwise the third argument (c) is evaluated and returned.
  680. 4 unary
  681. ?expressions operators unary
  682. ?operators unary
  683. ?unary
  684.  The following is a list of all the unary operators and their
  685.  usages:
  686.  
  687. @start table - first is interactive cleartext form
  688.   Symbol     Example      Explanation
  689.    -           -a          unary minus
  690.    ~           ~a        * one's complement
  691.    !           !a        * logical negation
  692.    !           a!        * factorial
  693. #\multicolumn{3}{|c|}{Unary Operators}\\
  694. #Symbol & Example & Explanation \\ \hline
  695. #\verb@-@ & \verb@-a@ & unary minus \\
  696. #\verb@~@ & \verb@~a@ & * one's complement \\
  697. #\verb@!@ & \verb@!a@ & * logical negation \\
  698. #\verb@!@ & \verb@a!@ & * factorial \\
  699. %-@-a@unary minus
  700. %~@~a@* one's complement
  701. %!@!a@* logical negation
  702. %!@a!@* factorial
  703.  
  704. @end table
  705.  (*) Starred explanations indicate that the operator requires an
  706.  integer argument.
  707.  
  708.  The factorial operator returns a real number to allow a greater range.
  709. 2 help
  710. ?help
  711.  The `help` command displays on-line help. To specify information on a
  712.  particular topic use the syntax:
  713.  
  714.          help {<topic>}
  715.  
  716.  If <topic> is not specified, a short message is printed about
  717.  GNUPLOT. After help for the requested topic is given, help for a
  718.  subtopic may be requested by typing its name, extending the help
  719.  request. After that subtopic has been printed, the request may be
  720.  extended again, or simply pressing return goes back one level to the
  721.  previous topic. Eventually, the GNUPLOT command line will return.
  722. 2 load
  723. ?load
  724.  The `load` command executes each line of the specified input file as
  725.  if it had been typed in interactively. Files created by the `save`
  726.  command can later be `load`ed. Any text file containing valid
  727.  commands can be created and then executed by the `load` command.
  728.  Files being `load`ed may themselves contain `load` commands. See
  729.  `comment` for information about comments in commands.
  730.  
  731.  The `load` command must be the last command on the line.
  732.  
  733.  Syntax:
  734.          load "<input-file>"
  735.  
  736.  The name of the input file must be enclosed in quotes.
  737.  
  738.  Examples:
  739.  
  740.          load 'work.gnu'
  741.          load "func.dat"
  742.  
  743.  The `load` command is performed implicitly on any file names given as
  744.  arguments to GNUPLOT. These are loaded in the order specified, and
  745.  then GNUPLOT exits.
  746. 2 pause
  747. ?pause
  748.  The `pause` command displays any text associated with the command and
  749.  then waits a specified amount of time or until the carriage return is
  750.  pressed.  `pause` is especially useful in conjunction with `load` files.
  751.  
  752.  Syntax:
  753.          pause <time> {"<string>"}
  754.  
  755.  <time> may be any integer constant or expression. Choosing -1 will
  756.  wait until a carriage return is hit, zero (0) won't pause at all, and
  757.  a positive integer will wait the specified number of seconds.
  758.  
  759.  Note: Since `pause` is not part of the plot it may interact with
  760.  different device drivers differently (depending upon how text and
  761.  graphics are mixed).
  762.  
  763.  Examples:
  764.          pause -1    # Wait until a carriage return is hit
  765.          pause 3     # Wait three seconds
  766.          pause -1  "Hit return to continue"
  767.          pause 10  "Isn't this pretty?  It's a cubic-spline."
  768.  
  769. 2 plot
  770. ?plot
  771. ?splot
  772.  `plot` and `splot` are the primary commands of the program. They plot
  773.  functions and data in many, many ways. `plot` is used to plot 2-d
  774.  functions and data, while `splot` plots 3-d surfaces and data.
  775.  
  776.  Syntax:
  777.  
  778.         plot {ranges} {<function> | {"<datafile>" {using ...}}}
  779.                      {title} {style} {, <function> {title} {style}...}
  780.  
  781.         splot {ranges} {<function> | {"<datafile>" {index i} {using ...}}}
  782.                      {title} {style} {, <function> {title} {style}...}
  783.  
  784.  where either a <function> or the name of a data file enclosed in quotes is
  785.  supplied.  A function is a mathematical expression, or a pair (`plot`) or
  786.  triple (`splot`) of mathematical expressions in the case of parametric
  787.  functions.  User-defined functions and variables may also be defined here.
  788.  
  789.  `plot` and `splot` commands can be as simple as
  790.  
  791.          plot sin(x)
  792.  
  793.  and
  794.  
  795.          splot x * y
  796.  
  797.  or as complex as (!)
  798.  
  799.   plot [t=1:10] [-pi:pi*2] tan(t), "data.1" using 2:3 with lines,
  800.         t**2 with points
  801. 3 data-file
  802. ?plot data-file
  803. ?plot datafile
  804. ?splot data-file
  805. ?splot datafile
  806. ?data-file
  807. ?datafile
  808. ?data
  809.  Discrete data contained in a file can be displayed by specifying the
  810.  name of the data file (enclosed in quotes) on the `plot` or `splot`
  811.  command line. Data files should contain one data point per line.
  812.  Lines beginning with # (or ! on VMS) will be treated as comments
  813.  and ignored. For `plot`s, each data point represents an (x,y)
  814.  pair. For `splot`s, each point is an (x,y,z) triple. For `plot`s with
  815.  error bars (see `plot errorbars`), each data point is either
  816.  (x,y,ydelta) or (x,y,ylow,yhigh). In all cases, the numbers on each
  817.  line of a data file must be separated by blank space. This blank
  818.  space divides each line into columns.
  819.  
  820.  For `plot`s the x value may be omitted, and for `splot`s the x
  821.  and y values may be omitted. In either case the omitted values are
  822.  assigned the current coordinate number. Coordinate numbers start at 0
  823.  and are incremented for each data point read.
  824.  
  825.  To specify other formats, see `plot datafile using`.
  826.  
  827.  In the `plot` command, blank lines in the data file cause a break in
  828.  the plot. There will be no line drawn between the preceding and
  829.  following points if the plot style is `lines` or `linespoints` (see
  830.  `plot style`). This does not change the plot style, as would plotting
  831.  the data as separate curves.
  832.  
  833.  This example compares the data in the file population.dat to a
  834.  theoretical curve:
  835.  
  836.          pop(x) = 103*exp((1965-x)/10)
  837.          plot [1960:1990] 'population.dat', pop(x)
  838.  
  839.  The file population.dat might contain:
  840.  
  841.          # Gnu population in Antarctica since 1965
  842.          1965   103
  843.          1970   55
  844.          1975   34
  845.          1980   24
  846.          1985   10
  847.  
  848.  When a data file is plotted, `samples` and `isosamples` are ignored.
  849.  Curves plotted using the `plot` command are automatically extended to
  850.  hold the entire curve. Similarly grid data plotted using the `splot`
  851.  command is automatically extended, using the assumption that isolines
  852.  are separated by blank lines (a line with only a CR/LF in it).
  853.  
  854.  Implicitly, there are two types of 3-d datafiles. If all the isolines
  855.  are of the same length, the data is assumed to be a grid data, i.e.,
  856.  the data has a grid topology. Cross isolines in the other parametric
  857.  direction (the ith cross isoline passes through the ith point of all the
  858.  provided isolines) will also be drawn for grid data. (Note contouring
  859.  is available for grid data only.) If all the isolines are not of the
  860.  same length, no cross isolines will be drawn and contouring that data
  861.  is impossible.
  862.  
  863.  For splot, data files may contain more than one mesh and by default
  864.  all meshes are plotted. Meshes are separated from each other, in the
  865.  file, by double blank lines. To control and splot a single mesh from
  866.  a multi mesh file, use the index modifier. See `splot index` for more.
  867.  
  868.  For splot if 3-d datafile and using format (see `splot datafile using`)
  869.  specify only z (height field), a non parametric mode must be specified.
  870.  If, on the other hand, x, y, and z are all specified, a parametric
  871.  mode should be selected (see `set parametric`) since data is defining a
  872.  parametric surface.
  873.  
  874.  A simple example of plotting a 3-d data file is
  875.  
  876.          set parametric
  877.          splot 'glass.dat'
  878.  
  879.  or
  880.  
  881.          set noparametric
  882.          splot 'datafile.dat'
  883.  
  884.  where the file datafile.dat might contain:
  885.  
  886.          # The valley of the Gnu.
  887.          10
  888.          10
  889.          10
  890.  
  891.          10
  892.          5
  893.          10
  894.  
  895.          10
  896.          1
  897.          10
  898.  
  899.          10
  900.          0
  901.          10
  902.  
  903.  Note datafile.dat defines a 4 by 3 grid ( 4 rows of 3 points each ).
  904.  Rows are separated by blank lines.
  905.  
  906.  On some computer systems with a popen function (UNIX), the datafile
  907.  can be piped through a shell command by starting the file name
  908.  with a '<'.  For example:
  909.  
  910.          pop(x) = 103*exp(-x/10)
  911.          plot '< awk "{print $1-1965, $2}" population.dat', pop(x)
  912.  
  913.  would plot the same information as the first population example
  914.  but with years since 1965 as the x axis.  If you want to execute
  915.  this example, you have to delete all comments from the data file
  916.  above or substitute the following command for the first part of the
  917.  command above (the part up to the comma):
  918.  
  919.          plot '< awk "$0 !~ /^#/ {print $1-1965, $2}" population.dat'
  920.  
  921.  It is also possible to apply a single function to the "y" value only,
  922.  e.g.
  923.  
  924.          plot 'population.dat' thru p(x)
  925.  
  926.  For more information about 3-d plotting, see `splot`.
  927. 4 using
  928. ?plot data-file using
  929. ?plot datafile using
  930. ?splot data-file using
  931. ?splot datafile using
  932. ?using
  933.  The format of data within a file can be selected with the `using`
  934.  option. An explicit scanf string can be used, or simpler column
  935.  choices can be made.
  936.  
  937.  Syntax:
  938.  
  939.          plot "datafile" { using { <ycol> |
  940.                                    <xcol>:<ycol> |
  941.                                    <xcol>:<ycol>:<ydelta> |
  942.                                    <xcol>:<ycol>:<ylow>:<yhigh> |
  943.                                    <xcol>:<ycol>:<ylow>:<yhigh>:<boxwidth> }
  944.                                  {"<scanf string>"} } ...
  945.  
  946.  and
  947.  
  948.          splot "datafile" { using { <xcol>:<ycol>:<zcol> | <zcol> }
  949.                                   {"<scanf string>"} } ...
  950.  
  951.  <xcol>, <ycol>, and <zcol> explicitly select the columns to plot from
  952.  a space or tab separated multicolumn data file. If only <ycol> is
  953.  selected for `plot`, <xcol> defaults to 1. If only <zcol> is selected
  954.  for `splot`, then only that column is read from the file. An <xcol> of
  955.  0 forces <ycol> to be plotted versus its coordinate number. <xcol>,
  956.  <ycol>, and <zcol> can be entered as constants or expressions.
  957.  
  958.  If errorbars (see also `plot errorbars`) are used for `plot`s,
  959.  ydelta (for example, a +/- error) should be provided as the third
  960.  column, or ylow and yhigh as third and fourth columns.
  961.  
  962.  If boxes or boxerrorbars are used for `plot`s, a fifth column to
  963.  specify the width of the box may be given.  This implies that columns
  964.  three and four must also be provided even if they are not used.
  965.  If you want to plot boxes from a data file with three columns,
  966.  set ylow and yhigh to y using the following command:
  967.          plot "datafile" using 1:2:2:2:3 with boxes
  968.  
  969.  Scanf strings override any <xcol>:<ycol>(:<zcol>) choices, except for
  970.  ordering of input, e.g.,
  971.          plot "datafile" using 2:1 "%f%*f%f"
  972.  causes the first column to be y and the third column to be x.
  973.  
  974.  If the scanf string is omitted, the default is generated based on the
  975.  <xcol>:<ycol>(:<zcol>) choices. If the `using` option is omitted, "%f%f"
  976.  is used for `plot` ("%f%f%f%f" for `errorbars` `plot`s) and "%f%f%f" is
  977.  used for `splot`.
  978.  
  979.  Examples:
  980.  
  981.          plot "MyData" using "%*f%f%*20[^\n]%f" with lines
  982.  
  983.  Data are read from the file "MyData" using the format
  984.  "%*f%f%*20[^\n]%f". The meaning of this format is: "%*f" ignore the
  985.  first number, "%f" then read in the second and assign to x,
  986.  "%*20[^\n]" then ignore 20 non-newline characters, "%f" then read in
  987.  the y value.
  988.  
  989.          n=3;
  990.          plot "MyData", "MyData" using n
  991.  
  992.  causes GNUPLOT to plot the second and third columns of MyData versus
  993.  the first column. The command 'n=4; replot' would then plot the second
  994.  and fourth columns of MyData versus the first column.
  995.  
  996.          splot "glass.dat" using 1
  997.  
  998.  causes GNUPLOT to plot the first coordinate of the points of glass.dat
  999.  as the z coordinate while ignoring the other two coordinates.
  1000.  
  1001.  Note: GNUPLOT first reads a line of the data file into a buffer and
  1002.  then does a
  1003.          sscanf(input_buffer, scanf_string, &x, &y{, &z});
  1004.  where 'x', 'y', and 'z' are of type 'float'. Any scanf string that
  1005.  specifies two (three for `splot`, three or four for `errorbars`) float
  1006.  numbers may be used.
  1007. 3 errorbars
  1008. ?plot errorbars
  1009. ?errorbars
  1010.  Error bars are supported for 2-d data file plots by reading one or
  1011.  two additional columns specifying ydelta or ylow and yhigh
  1012.  respectively. No support exists for x error bars or any error bars
  1013.  for `splot`s.
  1014.  
  1015.  In the default situation, GNUPLOT expects to see three or four
  1016.  numbers on each line of the data file, either (x, y, ydelta) or
  1017.  (x, y, ylow, yhigh). The x coordinate must be specified. The order
  1018.  of the numbers must be exactly as given above. Data files in this
  1019.  format can easily be plotted with error bars:
  1020.  
  1021.          plot "data.dat" with errorbars
  1022.  
  1023.  The error bar is a vertical line plotted from (x, ylow) to (x,
  1024.  yhigh). If ydelta is specified instead of ylow and yhigh,
  1025.  ylow=y-ydelta and yhigh=y+ydelta are derived. If there
  1026.  are only two numbers on the line, yhigh and ylow are both set to
  1027.  y. To get lines plotted between the data points, `plot` the
  1028.  data file twice, once with errorbars and once with lines.
  1029.  
  1030.  If y autoscaling is on, the y range will be adjusted to fit the
  1031.  error bars.
  1032.  
  1033.  The `using` option may be used to specify how columns of the data file
  1034.  are to be assigned to x, y, ydelta, ylow, and yhigh. The x column must
  1035.  be provided and both the x and y columns must appear before the
  1036.  errorbar columns. If three column numbers are given, they are x, y,
  1037.  and ydelta. If four columns are given, they are x, y, ylow, and
  1038.  yhigh.
  1039.  
  1040.  Examples:
  1041.  
  1042.          plot "data.dat" using 1:2:3:4 with errorbars
  1043.          plot "data.dat" using 3:2:6 with errorbars
  1044.          plot "data.dat" using 3:4:8:7 with errorbars
  1045.  
  1046.  The first example reads, x, y, ylow, and yhigh, from columns 1, 2, 3,
  1047.  and 4. This is equivalent to the default.  The second example reads x
  1048.  from the third column, y from second and ydelta from the sixth column.
  1049.  The third example reads x from the third column, y from the fourth,
  1050.  ylow from the eighth, and yhigh from seventh columns.
  1051.  
  1052.  See also `plot using` and `plot style`.
  1053. 3 parametric
  1054. ?plot parametric
  1055. ?splot parametric
  1056. ?parametric
  1057.  When in parametric mode (`set parametric`) mathematical expressions must
  1058.  be given in pairs for `plot` and in triplets for `splot`:
  1059.          plot sin(t),t**2
  1060.  or
  1061.          splot cos(u)*cos(v),cos(u)*sin(v),sin(u)
  1062.  
  1063.  Data files are plotted as before, except any preceding parametric
  1064.  function must be fully specified before a data file is given as a
  1065.  plot. In other words, the x parametric function (sin(t) above) and
  1066.  the y parametric function (t**2 above) must not be interrupted with
  1067.  any modifiers or data functions; doing so will generate a syntax error
  1068.  stating that the parametric function is not fully specified.
  1069.  
  1070.  Ranges take on a different meaning when in parametric mode. The first
  1071.  range on the `plot` command is the `trange`, the next is the `xrange`,
  1072.  and the last is the `yrange`. For `splot` the order is `urange`,
  1073.  `vrange`, `xrange`, `yrange`, and finally `zrange`. The following
  1074.  `plot` command shows setting the `trange` to [-pi:pi], the `xrange` to
  1075.  [-1.3:1.3] and the `yrange` to [-1:1] for the duration of the plot:
  1076.          plot [-pi:pi] [-1.3:1.3] [-1:1] sin(t),t**2
  1077.  
  1078.  Other modifiers, such as `with` and `title`, may be specified only
  1079.  after the parametric function has been completed:
  1080.          plot sin(t),t**2 title 'Parametric example' with linespoints
  1081.  
  1082.  
  1083. 3 ranges
  1084. ?splot ranges
  1085. ?plot ranges
  1086. ?ranges
  1087.  The optional range specifies the region of the plot that will be
  1088.  displayed.
  1089.  
  1090.  Ranges may be provided on the `plot` and `splot` command line and
  1091.  affect only that plot, or in the `set xrange`, `set yrange`, etc.,
  1092.  commands, to change the default ranges for future plots.
  1093.  
  1094.  Syntax:
  1095.          [{<dummy-var> =} {<xmin> : <xmax>}] { [{<ymin> : <ymax>}] }
  1096.  
  1097.  where <dummy-var> is the independent variable (the defaults are x and
  1098.  y, but this may be changed with `set dummy`) and the min and max
  1099.  terms can be constant expressions.
  1100.  
  1101.  Both the min and max terms are optional. The ':' is also optional
  1102.  if neither a min nor a max term is specified. This allows '[ ]' to
  1103.  be used as a null range specification.
  1104.  
  1105.  Specifying a range in the `plot` command line turns autoscaling for
  1106.  that axis off for that plot. Using one of the `set` range commands
  1107.  turns autoscaling off for that axis for future plots, unless changed
  1108.  later. (See `set autoscale`).
  1109.  
  1110.  Examples:
  1111.  
  1112.  This uses the current ranges:
  1113.          plot cos(x)
  1114.  
  1115.  This sets the x range only:
  1116.          plot [-10:30] sin(pi*x)/(pi*x)
  1117.  
  1118.  This is the same, but uses t as the dummy-variable:
  1119.          plot [t = -10 :30]  sin(pi*t)/(pi*t)
  1120.  
  1121.  This sets both the x and y ranges:
  1122.          plot [-pi:pi] [-3:3]  tan(x), 1/x
  1123.  
  1124.  This sets only the y range, and turns off autoscaling on both axes:
  1125.          plot [ ] [-2:sin(5)*-8] sin(x)**besj0(x)
  1126.  
  1127.  This sets xmax and ymin only:
  1128.          plot [:200] [-pi:]  exp(sin(x))
  1129.  
  1130.  This sets the x, y, and z ranges:
  1131.          splot [0:3] [1:4] [-1:1] x*y
  1132. 3 index
  1133. ?splot index
  1134. ?index
  1135.  Splotting of multi mesh data files can be controlled via the index modifier.
  1136.  A data file can contain more than one mesh, and in that case all meshes
  1137.  in the file will be splotted by default. Meshes are separated from each
  1138.  other, in the data file, by double blank lines. To splot a single mesh in
  1139.  a multi mesh file use the index modifier which specify which mesh to splot.
  1140.  First mesh is mesh 0.
  1141.  
  1142.  Example:
  1143.  
  1144.  splot "data1" index 2 with points
  1145.  
  1146.  will splot the third mesh in file data1 with points.
  1147. 3 style
  1148. ?plot style
  1149. ?splot style
  1150. ?style
  1151. ?plot with
  1152. ?with
  1153.  Plots may be displayed in one of eight styles: `lines`, `points`,
  1154.  `linespoints`, `impulses`, `dots`, `errorbars`, `steps`, `boxes`, or
  1155.  `boxerrorbars`.  The `lines` style connects adjacent points with lines.
  1156.  The `points` style displays a small symbol at each point.
  1157.  The `linespoints` style does both `lines` and `points`.
  1158.  The `impulses` style displays a vertical line from the x axis
  1159.  (or from the grid base for `splot`) to each point. The `dots` style
  1160.  plots a tiny dot at each point; this is useful for
  1161.  scatter plots with many points.
  1162.  
  1163.  The `errorbars` style is only relevant to 2-d data file plotting. It
  1164.  is treated like `points` for `splot`s and function `plot`s. For data
  1165.  `plot`s, `errorbars` is like `points`, except that a vertical error
  1166.  bar is also drawn: for each point (x,y), a line is drawn from
  1167.  (x,ylow) to (x,yhigh). A tic mark is placed at the ends of the error
  1168.  bar. The ylow and yhigh values are read from the data file's columns,
  1169.  as specified with the `using` option to plot. See `plot errorbars` for
  1170.  more information.
  1171.  
  1172.  The `boxes` style is only relevant to 2-d plotting.  Another style
  1173.  called `boxerrorbars` is also available and is only relevant to 2-d
  1174.  data file plotting.  This style is a combination of the `boxes` and
  1175.  `errorbars` styles.  The `boxes` style draws a box centred about
  1176.  the given x coordinate from the yaxis to the given y coordinate.
  1177.  The width of the box is obtained in one of three ways.  First, if a 
  1178.  data file has a fifth column, this will be used to set the width of 
  1179.  the box. Columns 3 and 4 (for `boxerrorbars`) are necessary but
  1180.  ignored in this instance.  Secondly, if a width has been set using 
  1181.  the `set boxwidth` command, this will be used.  Otherwise the width 
  1182.  of each box will be calculated automatically so that it touches the
  1183.  adjacent boxes.
  1184.  
  1185.  The `steps` style is only relevant to 2-d plotting.  This style
  1186.  connects consecutive points with two line segments: the first
  1187.  from (x1,y1) to (x2,y1) and the second from (x2,y1) to (x2,y2).
  1188.  
  1189.  Default styles are chosen with the `set function style` and
  1190.  `set data style` commands.
  1191.  
  1192.  By default, each function and data file will use a different
  1193.  line type and point type, up to the maximum number of available
  1194.  types. All terminal drivers support at least six different point
  1195.  types, and re-use them, in order, if more than six are required.
  1196.  The LaTeX driver supplies an additional six point types (all variants
  1197.  of a circle), and thus will only repeat after twelve curves are
  1198.  plotted with points.
  1199.  
  1200.  If desired, the style and (optionally) the line type and point type
  1201.  used for a curve can be specified.
  1202.  
  1203.  Syntax:
  1204.  
  1205.          with <style> {<linetype> {<pointtype>}}
  1206.  
  1207.  where <style> is either `lines`, `points`, `linespoints`, `impulses`,
  1208.  `dots`, `steps`, or `errorbars`. The <linetype> and <pointtype> are
  1209.  positive integer constants or expressions and specify the line type
  1210.  and point type to be used for the plot. Line type 1 is the first line
  1211.  type used by default, line type 2 is the second line type used by
  1212.  default, etc.
  1213.  
  1214.  Examples:
  1215.  
  1216.  This plots sin(x) with impulses:
  1217.          plot sin(x) with impulses
  1218.  
  1219.  This plots x*y with points, x**2 + y**2 default:
  1220.          splot x*y w points, x**2 + y**2
  1221.  
  1222.  This plots tan(x) with the default function style, "data.1" with lines:
  1223.          plot [ ] [-2:5] tan(x), "data.1" with l
  1224.  
  1225.  This plots "leastsq.dat" with impulses:
  1226.          plot 'leastsq.dat' w i
  1227.  
  1228.  This plots the data file 'population' with boxes:
  1229.          plot "population" with boxes
  1230.  
  1231.  This plots "exper.dat" with errorbars and lines connecting the points:
  1232.          plot 'exper.dat' w lines, 'exper.dat' w errorbars
  1233.  
  1234.  Here 'exper.dat' should have three or four data columns.
  1235.  
  1236.  This plots x**2 + y**2 and x**2 - y**2 with the same line type:
  1237.          splot x**2 + y**2 with line 1, x**2 - y**2 with line 1
  1238.  
  1239.  This plots sin(x) and cos(x) with linespoints, using the
  1240.  same line type but different point types:
  1241.          plot sin(x) with linesp 1 3, cos(x) with linesp 1 4
  1242.  
  1243.  This plots file "data" with points style 3:
  1244.          plot "data" with points 1 3
  1245.  Note that the line style must be specified when specifying the point
  1246.  style, even when it is irrelevant. Here the line style is 1 and the
  1247.  point style is 3, and the line style is irrelevant.
  1248.  
  1249.  See `set style` to change the default styles.
  1250. 3 title
  1251. ?plot title
  1252. ?splot title
  1253.  A title of each plot appears in the key. By default the title is
  1254.  the function or file name as it appears on the plot command line.
  1255.  The title can be changed by using the `title` option. This option
  1256.  should precede any `with` option.
  1257.  
  1258.  Syntax:
  1259.          title "<title>"
  1260.  
  1261.  where <title> is the new title of the plot and must be enclosed in
  1262.  quotes. The quotes will not be shown in the key.
  1263.  
  1264.  Examples:
  1265.  
  1266.  This plots y=x with the title 'x':
  1267.          plot x
  1268.  
  1269.  This plots the "glass.dat" file with the title 'surface of revolution':
  1270.          splot "glass.dat" title 'surface of revolution'
  1271.  
  1272.  This plots x squared with title "x^2" and "data.1" with title
  1273.  'measured data':
  1274.          plot x**2 title "x^2", "data.1" t 'measured data'
  1275.  
  1276.  The title can be omitted from the key with the "notitle" option for
  1277.  plot and splot.  This can be useful when some curves
  1278.  are plotted solely for decoration; for example, if one wanted a
  1279.  circular border for a polar plot, he could say:
  1280.  
  1281.  Example:
  1282.         set polar
  1283.         plot my_function(x), 1 notitle
  1284.  
  1285.  This would generate a key entry for "my_function" but not for "1".
  1286.  See the poldat.dem example.
  1287.  
  1288.  
  1289. 2 print
  1290. ?print
  1291.  The `print` command prints the value of <expression> to the screen.
  1292.  
  1293.  Syntax:
  1294.          print <expression>
  1295.  
  1296.  See `expressions`.
  1297. 2 pwd
  1298. ?pwd
  1299.  The `pwd` command prints the name of the working directory to the screen.
  1300.  
  1301.  Syntax:
  1302.          pwd
  1303. 2 quit
  1304. ?quit
  1305.  The `exit` and `quit` commands and END-OF-FILE character will exit
  1306.  GNUPLOT. All these commands will clear the output device (as the
  1307.  `clear` command does) before exiting.
  1308. 2 replot
  1309. ?replot
  1310.  The `replot` command without arguments repeats the last `plot` or `splot`
  1311.  command. This can be useful for viewing a plot with different `set`
  1312.  options, or when generating the same plot for several devices.
  1313.  
  1314.  Arguments specified after a `replot` command will be added onto the last
  1315.  `plot` (`splot`) command (with an implied ',' separator) before it is
  1316.  repeated. `replot` accepts the same arguments as the `plot` (`splot`)
  1317.  commands except that ranges cannot be specified.
  1318.  See `command line-editing` for ways to edit the last `plot`
  1319.  (`splot`) command.
  1320. 2 reread
  1321. ?reread
  1322.  The `reread` command causes the current gnuplot command file, as specified
  1323.  by a `load` command or on the command line, to be reset to its starting
  1324.  point before further commands are read from it.  This essentially implements
  1325.  an endless loop of the commands from the beginning of the command file to
  1326.  the `reread` command.  The `reread` command has no effect if input from
  1327.  standard input.
  1328. 2 save
  1329. ?save
  1330.  The `save` command saves user-defined functions, variables, set
  1331.  options or all three plus the last `plot` (`splot`) command to the
  1332.  specified file.
  1333.  
  1334.  Syntax:
  1335.          save  {<option>} "<filename>"
  1336.  
  1337.  where <option> is `functions`, `variables` or `set`. If no option is
  1338.  used, GNUPLOT saves functions, variables, set options and the last `plot`
  1339.  (`splot`) command.
  1340.  
  1341.  `save`d files are written in text format and may be read by the `load`
  1342.  command.
  1343.  
  1344.  The filename must be enclosed in quotes.
  1345.  
  1346.  Examples:
  1347.  
  1348.          save "work.gnu"
  1349.          save functions 'func.dat'
  1350.          save var 'var.dat'
  1351.          save set "options.dat"
  1352. 2 set-show
  1353. ?set
  1354. ?show
  1355. ?show all
  1356.  The `set` command sets LOTS of options.
  1357.  
  1358.  The `show` command shows their settings. `show all` shows all the
  1359.  settings.
  1360. 3 angles
  1361. ?set angles
  1362. ?show angles
  1363. ?angles
  1364. ?set angles degrees
  1365.  By default, GNUPLOT assumes the independent variable in polar plots
  1366.  is in units of radians. If `set angles degrees` is specified before
  1367.  `set polar` then the default range is [0:360] and the independent
  1368.  variable has units of degrees. This is particularly useful for
  1369.  plots of data files. The angle setting also hold for the 3-d
  1370.  mapping as set via the `set mapping` command.
  1371.  
  1372.  Syntax:
  1373.          set angles { degrees | radians }
  1374.          show angles
  1375. 3 arrow
  1376. ?set arrow
  1377. ?set noarrow
  1378. ?show arrow
  1379. ?arrow
  1380. ?noarrow
  1381.  Arbitrary arrows can be placed on a plot using the `set arrow`
  1382.  command.
  1383.  
  1384.  Syntax:
  1385.  
  1386.           set arrow {<tag>} {from <sx>,<sy>{,<sz>}}
  1387.                             {to <ex>,<ey>{,<ez>}} {{no}head}
  1388.           set noarrow {<tag>}
  1389.           show arrow
  1390.  
  1391.  
  1392.  Unspecified coordinates default to 0. The x, y, and z values are in
  1393.  the graph's coordinate system. The z coordinate is only used in
  1394.  `splot` commands. <tag> is an integer that identifies the arrow. If no
  1395.  tag is given, the lowest unused tag value is assigned automatically.
  1396.  The tag can be used to delete or change a specific arrow. To change
  1397.  any attribute of an existing arrow, use the `set arrow` command with
  1398.  the appropriate tag, and specify the parts of the arrow to be
  1399.  changed. Specifying nohead requests the arrow be drawn without a head
  1400.  (yielding a line segment). By default, arrows have heads.
  1401.  
  1402.  Arrows outside the plotted boundaries are permitted but may cause
  1403.  device errors.
  1404.  
  1405.  Examples:
  1406.  
  1407.  To set an arrow pointing from the origin to (1,2), use:
  1408.           set arrow to 1,2
  1409.  To set an arrow from (-10,4,2) to (-5,5,3), and tag the arrow number
  1410.  3, use:
  1411.           set arrow 3 from -10,4,2 to -5,5,3
  1412.  To change the preceding arrow begin at 1,1,1, without an arrow head,
  1413.  use:
  1414.           set arrow 3 from 1,1,1 nohead
  1415.  To delete arrow number 2 use:
  1416.           set noarrow 2
  1417.  To delete all arrows use:
  1418.           set noarrow
  1419.  To show all arrows (in tag order) use:
  1420.           show arrow
  1421. 3 autoscale
  1422. ?set autoscale
  1423. ?set noautoscale
  1424. ?show autoscale
  1425. ?autoscale
  1426. ?noautoscale
  1427.  Auto scaling may be set individually on the x, y or z axis
  1428.  or globally on all axes. The default is to autoscale all axes.
  1429.  
  1430.  When autoscaling, the plot range is automatically computed and the
  1431.  dependent axis (y for a `plot` and z for `splot`) is scaled to
  1432.  include the range of the function or data being plotted.
  1433.  
  1434.  If autoscaling of the dependent axis (y or z) is not set, the
  1435.  current y or z range is used.
  1436.  
  1437.  See `set yrange` or `set zrange`.
  1438.  
  1439.  Autoscaling the independent variables (x for `plot` and x,y for
  1440.  `splot`) is a request to set the domain to match any data file being
  1441.  plotted. If there are no data files then autoscaling an independent
  1442.  variable has no effect. In other words, in the absence of a data
  1443.  file, functions alone do not affect the x range (or the y range if
  1444.  plotting z = f(x,y)).
  1445.  
  1446.  See `set xrange`, or `set yrange`.
  1447.  
  1448.  The behavior of autoscaling remains consistent in parametric mode,
  1449.  however, there are more dependent variables and hence more control
  1450.  over x, y, and z plot scales. In parametric mode, the independent or
  1451.  dummy variable is t for `plot`s and u,v for `splot`s.  Autoscale in
  1452.  parametric mode, then, controls all ranges (t, u, v, x, y, and z) and
  1453.  allows x, y, and z to be fully autoscaled.
  1454.  
  1455.  See `set parametric`.
  1456.  
  1457.  Syntax:
  1458.          set autoscale <axes>
  1459.          set noautoscale <axes>
  1460.          show autoscale
  1461.  
  1462.  where <axes> is either `x`, `y`, `z` or `xy`. If <axes> is not given
  1463.  then all axes are assumed.
  1464.  
  1465.  Examples:
  1466.  
  1467.  This sets autoscaling of the y axis. x axis autoscaling is not
  1468.  affected.
  1469.          set autoscale y
  1470.  
  1471.  This sets autoscaling of the x and y axes.
  1472.          set autoscale xy
  1473.  
  1474.  This sets autoscaling of the x, y and z axes.
  1475.          set autoscale
  1476.  
  1477.  This disables autoscaling of the x, y and z axes.
  1478.          set noautoscale
  1479.  
  1480.  This disables autoscaling of the z axis only.
  1481.          set noautoscale z
  1482. 4 parametric mode
  1483. ?autoscale parametric
  1484. ?set autoscale t
  1485.  When in parametric mode (`set parametric`) the xrange is as
  1486.  fully scalable as the yrange. In other words, in parametric
  1487.  mode the x axis can be automatically scaled to fit the range
  1488.  of the parametric function that is being plotted. Of course,
  1489.  the y axis can also be automatically scaled just as in the
  1490.  non-parametric case. If autoscaling on the x axis is not set,
  1491.  the current x range is used.
  1492.  
  1493.  When there is a mix of data files and functions, the xrange of
  1494.  the functions is selected as that of the data files if autoscale
  1495.  is true for x. While this keeps the behavior compatible with
  1496.  non-parametric plotting, it may not be retained in the future.
  1497.  The problem is that, in parametric mode, the x and y ranges are
  1498.  not as distinguishable as in the non-parametric mode and this
  1499.  behavior may not be the most useful.
  1500.  
  1501.  For completeness a last command `set autoscale t` is accepted.
  1502.  However, the effect of this "scaling" is very minor. When
  1503.  GNUPLOT determines that the t range would be empty it makes a
  1504.  small adjustment if autoscaling is true. Otherwise, GNUPLOT
  1505.  gives an error. Such behavior may, in fact, not be very useful
  1506.  and the command `set autoscale t` is certainly questionable.
  1507.  
  1508.  `splot` extends the above idea similarly. If autoscaling is set then
  1509.  x, y, and z ranges are computed and each axis scaled to fit the
  1510.  resulting data.
  1511. 3 border
  1512. ?set border
  1513. ?set noborder
  1514. ?show border
  1515. ?border
  1516. ?noborder
  1517.  The `set border` and `set noborder` commands controls the display of
  1518.  the plot borders for the `plot` and `splot` commands.
  1519.  
  1520.  Syntax:
  1521.          set border
  1522.          set noborder
  1523.          show border
  1524. 3 boxwidth
  1525. ?set boxwidth
  1526. ?show boxwidth
  1527. ?boxwidth
  1528.  The `set boxwidth` command is used to set the default width of
  1529.  boxes in the `boxes` and `boxerrorbars` styles.
  1530.  
  1531.  If a data file is plotted without the width being specified in the
  1532.  fifth column, or a function is plotted, the width of each box is
  1533.  set by the `set boxwidth` command.  If a width is given after the
  1534.  `set boxwidth` command then this is used as the width.  Otherwise
  1535.  the width of each box will be calculated automatically so that
  1536.  it touches the adjacent boxes.
  1537.  
  1538.  Syntax:
  1539.           set boxwidth {<width>}
  1540.           show boxwidth
  1541.  
  1542.  To set the box width to automatic use the command
  1543.           set boxwidth
  1544. 3 clabel
  1545. ?set clabel
  1546. ?set noclabel
  1547. ?show clabel
  1548. ?clabel
  1549. ?noclabel
  1550.  GNUPLOT will vary the linetype used for each contour level
  1551.  when clabel is set. When this option on (the default), a
  1552.  legend labels each linestyle with the z level it represents.
  1553.  
  1554.  Syntax:
  1555.          set clabel
  1556.          set noclabel
  1557.          show clabel
  1558. 3 clip
  1559. ?set clip
  1560. ?set noclip
  1561. ?show clip
  1562. ?clip
  1563. ?noclip
  1564.  GNUPLOT can clip data points and lines that are near the boundaries
  1565.  of a plot.
  1566.  
  1567.  Syntax:
  1568.          set clip <clip-type>
  1569.          set noclip <clip-type>
  1570.          show clip
  1571.  
  1572.  Three clip types are supported by GNUPLOT: `points`, `one`, and `two`.
  1573.  One, two, or all three clip types may be active for a single plot.
  1574.  
  1575.  The `points` clip type forces GNUPLOT to clip (actually, not plot at
  1576.  all) data points that fall within but too close to the boundaries
  1577.  (this is so the large symbols used for points will not extend outside
  1578.  the boundary lines). Without clipping points near the boundaries may
  1579.  look bad; try adjusting the x and y ranges.
  1580.  
  1581.  Setting the `one` clip type causes GNUPLOT to plot the line segments
  1582.  which have only one of the two endpoints within the plotting region.
  1583.  Only the in-range portion of the line is drawn.  The alternative is to
  1584.  not draw any portion of the line segment.
  1585.  
  1586.  Some lines may have both endpoints out of range, but pass through the
  1587.  plotting area. Setting the `two` clip-type allows the visible portion
  1588.  of these lines to be drawn.
  1589.  
  1590.  In no case is a line drawn outside the plotting area.
  1591.  
  1592.  The defaults are `noclip points`, `clip one`, and `noclip two`.
  1593.  
  1594.  To check the state of all forms of clipping, use
  1595.          show clip
  1596.  
  1597.  For backward compatibility with older versions, the following forms
  1598.  are also permitted.
  1599.         set clip
  1600.         set noclip
  1601.  `set clip` is synonymous with `set clip points`. `set noclip` turns
  1602.  off all three types of clipping.
  1603. 3 cntrparam
  1604. ?set cntrparam
  1605. ?show cntrparam
  1606. ?cntrparam
  1607.  Sets the different parameters for the contouring plot (see also `contour`).
  1608.  
  1609.  Syntax:
  1610.   set cntrparam { { linear | cubicspline | bspline } |
  1611.      points <n> |
  1612.      order <n>  |
  1613.      levels { [ auto ] <n> |
  1614.      discrete <z1>,<z2>, ... |
  1615.      incremental {<start>, <incr>{, <end>} } }
  1616.  
  1617.  Examples:
  1618.      set cntrparam bspline
  1619.      set cntrparam points 7
  1620.      set cntrparam order 10
  1621.      set cntrparam levels auto 5                   # 5 automatic levels
  1622.      set cntrparam levels discrete .1,1/exp(1),.9  # 3 discrete at .1,.37,.9
  1623.      set cntrparam levels incremental  0,.1,.4
  1624.      # 5 incremental levels at 0, .1, .2, .3 and .4
  1625.      set cntrparam levels 10
  1626.      # sets n = 10 retaining current setting of auto, discr. and
  1627.      # increment's start and increment value, while changing end
  1628.      set cntrparam levels incremental 100,50
  1629.      # set start = 100 and increment = 50, retaining n levels
  1630.  
  1631.  This command controls the way contours are plotted. <n> should be an
  1632.  integral constant expression and <z1>, <z2> any constant expressions.
  1633.  The parameters are:
  1634.  
  1635.  `linear`, `cubicspline`, `bspline` - Controls type of approximation or
  1636.  interpolation. If `linear`, then the contours are drawn piecewise
  1637.  linear, as extracted from the surface directly. If `cubicspline`, then
  1638.  piecewise linear contours are interpolated to form a somewhat smoother
  1639.  contours, but which may undulate. The third option is the uniform
  1640.  `bspline`, which only approximates the piecewise linear data but is
  1641.  guaranteed to be smoother.
  1642.  
  1643.  `points` - Eventually all drawings are done with piecewise linear
  1644.  strokes.  This number controls the number of points used to
  1645.  approximate a curve.  Relevant for `cubicspline` and `bspline` modes
  1646.  only.
  1647.  
  1648.  `order`  - Order of the bspline approximation to be used. The bigger this
  1649.  order is, the smoother the resulting contour.  (Of course, higher order
  1650.  bspline curves will move further away from the original piecewise linear
  1651.  data.)  This option is relevant for `bspline` mode only. Allowed values are
  1652.  integers in the range from 2 (linear) to 10.
  1653.  
  1654.  `levels` - Number of contour levels, 'n'.  Selection of the levels is
  1655.  controlled by 'auto' (default), 'discrete', and 'incremental'. For 'auto',
  1656.  if the surface is bounded by zmin and zmax then contours will be
  1657.  generated from zmin+dz to zmax-dz in steps of size dz, where
  1658.  dz = (zmax - zmin) / (levels + 1).  For 'discrete', contours will be
  1659.  generated at z = z1, z2 ... as specified.  The number of discrete levels
  1660.  is limited to MAX_DISCRETE_LEVELS, defined in plot.h to be 30.  If
  1661.  'incremental', contours are generated at <n> values of z beginning at
  1662.  <start> and increasing by <increment>.
  1663. 3 contour
  1664. ?set contour
  1665. ?show contour
  1666. ?contour
  1667.  Enable contour drawing for surfaces. This option is available for `splot`
  1668.  only.
  1669.  
  1670.  Syntax:
  1671.          set contour { base | surface | both }
  1672.          set nocontour
  1673.  
  1674.  If no option is provided to `set contour`, the default is `base`.
  1675.  The three options specify where to draw the contours: `base` draws
  1676.  the contours on the grid base where the x/ytics are placed, `surface`
  1677.  draws the contours on the surfaces themselves, and `both` draws the
  1678.  contours on both the base and the surface.
  1679.  
  1680.  See also `set cntrparam` for the parameters that affect the drawing of
  1681.  contours.
  1682. 3 data style
  1683. ?set data style
  1684. ?show data style
  1685. ?data style
  1686.  The `set data style` command changes the default plotting style
  1687.  for data plots.
  1688.  
  1689.  Syntax:
  1690.          set data style
  1691.          show data style
  1692.          set data style <style-choice>
  1693.  
  1694.  In the first case, `set data style` returns the possible style
  1695.  choices:  `lines`, `points`, `linespoints`, `dots`, `steps`,
  1696.  `impulses`, `errorbars`, `boxes` or `boxerrorbars`.  `show data style`
  1697.  shows the current default plotting style for data.  `set data style dots`
  1698.  would actually  change the default plotting style.  See also `plot`.
  1699. 3 dgrid3d
  1700. ?set dgrid3d
  1701. ?show dgrid3d
  1702. ?dgrid3d
  1703.  Enables and sets the different parameters for non grid to grid data mapping.
  1704.  
  1705.  Syntax:
  1706.          set dgrid3d {,{<row_size>}{,{<col_size>}{,<norm>}}}
  1707.          set nodgrid3d
  1708.  
  1709.  Examples:
  1710.         set dgrid3d 10,10,2
  1711.         set dgrid3d ,,4
  1712.  
  1713.  The first selects a grid of size 10 by 10 to be constructed and the use
  1714.  of L2 norm in the distance computation. The second only modifies the norm
  1715.  to be used to L4.
  1716.  
  1717.  By default this option is disabled. When enabled, 3d data read from a file
  1718.  is always treaded as a scattered data set. A grid with dimensions derived
  1719.  from a bounding box of the scattered data and size as specified by the
  1720.  row/col_size above is created for plotting and contouring. The grid is
  1721.  equally spaced in x and y while the z value is computed as a weighted
  1722.  average of the scattered points distance to the grid points. The closer
  1723.  the scatter points to a grid point are the more effect they have on that
  1724.  grid point. The third, norm, parameter controls the "meaning" of the
  1725.  distance, by specifying the distance norm. This distance computation
  1726.  is optimized for powers of 2 norms, specifically 1, 2, 4, 8, and 16, but
  1727.  any nonnegative integer can be used.
  1728.  
  1729.  This dgrid3d option is a simple low pass filter that converts scattered data
  1730.  to a grid data set. More sophisticated approaches to this problem exists and
  1731.  should be used as a preprocess to and outside gnuplot if this simple solution
  1732.  is found inadequate.
  1733.  
  1734. 3 dummy
  1735. ?set dummy
  1736. ?show dummy
  1737. ?dummy
  1738.  By default, GNUPLOT assumes that the independent variable for the
  1739.  `plot` command is x, and the independent variables for the `splot`
  1740.  command are x and y. They are called the dummy variables because it
  1741.  is just a notation to indicate the independent variables.
  1742.  The `set dummy` command changes these default dummy variable names.
  1743.  For example, it may be more convenient to call the dummy variable t
  1744.  when plotting time functions:
  1745.  
  1746.          set dummy t
  1747.          plot sin(t), cos(t)
  1748.  
  1749.  Syntax:
  1750.          set dummy <dummy-var>{,<dummy-var>}
  1751.          show dummy
  1752.  
  1753.  Examples:
  1754.          set dummy u,v
  1755.          set dummy ,s
  1756.  
  1757.  to set both dummy variables to u and v or set only the second
  1758.  variable to s.
  1759.  
  1760.  The `set parametric` command also changes the dummy variables (to t
  1761.  for `plot` and u,v for `splot`s).
  1762.  
  1763. 3 format
  1764. ?set format
  1765. ?show format
  1766. ?format
  1767.  The format of the tic-mark labels can be set with the `set format`
  1768.  command. The default format for both axes is "%g", but other formats
  1769.  such as "%.2f" or "%3.0fm" are often desirable. Anything accepted by
  1770.  printf when given a double precision number, and then accepted by the
  1771.  terminal, will work. In particular, the formats f, e, and g will work,
  1772.  and the d, o, x, c, s, and u formats will not work.
  1773.  
  1774.  Syntax:
  1775.          set format {<axes>} {"<format-string>"}
  1776.          show format
  1777.  
  1778.  where <axes> is either `x`, `y`, `z`, `xy`, or nothing (which is the
  1779.  same as `xy`). The length of the string representing a ticmark (after
  1780.  formatting with printf) is restricted to 100 characters.  If the
  1781.  format string is omitted, the format will be returned to the default
  1782.  "%g". For LaTeX users, the format "$%g$" is often desirable.  If the
  1783.  empty string "" is used, no label will be plotted with each tic,
  1784.  though the tic mark will still be plotted. To eliminate all tic marks,
  1785.  use `set noxtics` or `set noytics`.
  1786.  
  1787.  See also `set xtics` and `set ytics` for more control over tic labels.
  1788. 3 function style
  1789. ?set function style
  1790. ?show function style
  1791. ?function style
  1792.  The `set function style` command changes the default plotting style
  1793.  for functions.
  1794.  
  1795.  Syntax:
  1796.          set function style
  1797.          show function style
  1798.          set function style <style-choice>
  1799.  
  1800.  In the first case, `set function style` returns the possible style
  1801.  choices:  `lines`, `points`, `linespoints`, `dots`, `steps`,
  1802.  `impulses`, `errorbars`, `boxes`, or `boxerrorbars`.
  1803.  `show function style` shows the current default plotting style for
  1804.  functions.  `set function style linespoints` would actually change
  1805.  the default plotting style.   See also `plot`.
  1806. 3 functions
  1807. ?show functions
  1808.  The `show functions` command lists all user-defined functions and
  1809.  their definitions.
  1810.  
  1811.  Syntax:
  1812.          show functions
  1813. 3 grid
  1814. ?set grid
  1815. ?show grid
  1816. ?grid
  1817.  The optional `set grid` draws a grid at the tic marks with the axis
  1818.  linetype.
  1819.  
  1820.  Syntax:
  1821.          set grid
  1822.          set nogrid
  1823.          show grid
  1824. 3 hidden3d
  1825. ?set hidden3d
  1826. ?show hidden3d
  1827.  The `set hidden3d` command enables hidden line removal for explicit
  1828.  surface plotting (see `splot`).
  1829.  Hidden line removal may be used for both explicit functions and for
  1830.  explicit data.  It now works for parametric surfaces as well.
  1831.  
  1832.  When this flag is set both the surface hidden portion and possibly
  1833.  its hidden contours (see `set contour`) as well as the hidden grid will be
  1834.  removed. Labels and arrows are always visible and are unaffected by this
  1835.  command.
  1836.  
  1837.  Each surface has its hidden parts removed with respect to itself and to
  1838.  other surfaces, if more than one surface is plotted. This mode is
  1839.  meaningful when surfaces are plotted using line style drawing only.
  1840.  
  1841.  Syntax:
  1842.          set hidden3d
  1843.          set nohidden3d
  1844.          show hidden3d
  1845. 3 isosamples
  1846. ?set isosamples
  1847. ?show isosamples
  1848. ?isosamples
  1849.  An isoline is a curve parametrized by one of the surface parameters
  1850.  while the other surface parameter is fixed. Isolines are a simple
  1851.  means to display a surface. By fixing the u parameter of surface
  1852.  s(u,v), the iso-u lines of the form c(v) = s(u0,v) are produced, and
  1853.  by fixing the v parameter, the iso-v lines of the form c(u) = s(u,v0)
  1854.  are produced.
  1855.  
  1856.  The isoline density of surfaces may be changed by the `set isosamples`
  1857.  command. By default, sampling is set to 10 isolines per u or v axis.
  1858.  A higher sampling rate will produce more accurate plots, but will take
  1859.  longer. This parameter has no effect on data file plotting.
  1860.  
  1861.  Syntax:
  1862.          set isosamples <iso_1> {,<iso_2>}
  1863.          show isosamples
  1864.  
  1865.  Each surface plot will have <iso_1> iso-u lines and <iso_2> iso-v lines.
  1866.  If you only specify <iso_1>, <iso_2> will be set to the same value as
  1867.  <iso_1>.
  1868.  
  1869.  When a surface plot is being done without the removal of hidden
  1870.  lines, `set samples` also has an effect on the number of points being
  1871.  evaluated. See `set samples`.
  1872. 3 key
  1873. ?set key
  1874. ?show key
  1875. ?key
  1876.  The `set key` enables a key describing curves on a plot.  By default
  1877.  the key is placed in the upper right corner of the plot.
  1878.  
  1879.  Syntax:
  1880.          set key
  1881.          set key <x>,<y>{,<z>}
  1882.          set nokey
  1883.          show key
  1884.  
  1885.  The coordinates <x>, <y> (and <z> for `splot`s) specify the location
  1886.  of the key on the plot. The key is drawn as a sequence of lines, with
  1887.  one plot described on each line. On the right hand side of each line
  1888.  is a representation that attempts to mimic the way the curve is
  1889.  plotted.  On the left side of each line is the text description,
  1890.  obtained from the `plot` command. See `plot title` to change this
  1891.  description. The lines are vertically arranged so an imaginary
  1892.  straight line divides the left- and right-hand sides of the key. It is
  1893.  the coordinates of this line that are specified with the `set key`
  1894.  command. In a `plot`, only the x and y coordinates are used to specify
  1895.  the line position.  For a `splot`, x, y and z are all being used as a
  1896.  3-d location mapped using the same mapping as the plot itself to form
  1897.  the required 2-d screen position of the imaginary line.
  1898.  
  1899.  Some or all of the key may be outside of the plot boundary, although
  1900.  this may interfere with other labels and may cause an error on some
  1901.  devices.
  1902.  
  1903.  Examples:
  1904.  
  1905.  This places the key at the default location:
  1906.          set key
  1907.  This disables the key:
  1908.          set nokey
  1909.  This places a key at coordinates 2,3.5,2
  1910.          set key 2,3.5,2
  1911. 3 label
  1912. ?set label
  1913. ?set nolabel
  1914. ?show label
  1915. ?label
  1916. ?nolabel
  1917.  Arbitrary labels can be placed on the plot using the `set label`
  1918.  command.  If the z coordinate is given on a `plot` it is ignored; if
  1919.  it is missing on a `splot` it is assumed to be 0.
  1920.  
  1921.  Syntax:
  1922.  
  1923.           set label {<tag>} {"<label_text>"} {at <x>,<y>{,<z>}}
  1924.                             {<justification>}
  1925.           set nolabel {<tag>}
  1926.           show label
  1927.  
  1928.  
  1929.  The text defaults to "", and the position to 0,0,0.  The <x>, <y>, and
  1930.  <z> values are in the graph's coordinate system.  The tag is an
  1931.  integer that is used to identify the label. If no <tag> is given, the
  1932.  lowest unused tag value is assigned automatically. The tag can be used
  1933.  to delete or change a specific label. To change any attribute of an
  1934.  existing label, use the `set label` command with the appropriate tag,
  1935.  and specify the parts of the label to be changed.
  1936.  
  1937.  By default, the text is placed flush left against the point x,y,z.
  1938.  To adjust the way the label is positioned with respect to the point
  1939.  x,y,z, add the parameter <justification>, which may be `left`, `right`
  1940.  or `center`, indicating that the point is to be at the left, right or
  1941.  center of the text. Labels outside the plotted boundaries are
  1942.  permitted but may interfere with axes labels or other text.
  1943.  
  1944.  Examples:
  1945.  
  1946.  To set a label at (1,2) to "y=x" use:
  1947.           set label "y=x" at 1,2
  1948.  To set a label "y=x^2" with the right of the text at (2,3,4), and tag
  1949.  the label number 3, use:
  1950.           set label 3 "y=x^2" at 2,3,4 right
  1951.  To change the preceding label to center justification, use:
  1952.           set label 3 center
  1953.  To delete label number 2 use:
  1954.           set nolabel 2
  1955.  To delete all labels use:
  1956.           set nolabel
  1957.  To show all labels (in tag order) use:
  1958.           show label
  1959.  
  1960.  (The EEPIC, Imagen, LaTeX, and TPIC drivers allow \\ in a string to specify
  1961.  a newline.)
  1962. 3 logscale
  1963. ?set logscale
  1964. ?set nologscale
  1965. ?show logscale
  1966. ?logscale
  1967. ?nologscale
  1968.  Log scaling may be set on the x, y, and z axes.
  1969.  
  1970.  Syntax:
  1971.          set logscale <axes> <base>
  1972.          set nologscale <axes>
  1973.          show logscale
  1974.  
  1975.  where <axes> may be any combinations of `x`, `y`, and `z`, in any
  1976.  order, and where <base> is the base of the log scaling.  If <base>
  1977.  is not given, then 10 is assumed.  If <axes> is not given then all
  1978.  three axes are assumed.  The command `set logscale` turns on log
  1979.  scaling on the specified axes, while `set nologscale` turns off
  1980.  log scaling.
  1981.  
  1982.  Examples:
  1983.  
  1984.  To enable log scaling in both x and z axes:
  1985.         set logscale xz
  1986.  To enable scaling log base 2 of the y axis:
  1987.         set logscale y 2
  1988.  To disable z axis log scaling:
  1989.         set nologscale z
  1990. 3 mapping
  1991. ?set mapping
  1992. ?show mapping
  1993. ?mapping
  1994.  
  1995.  Syntax:
  1996.          set mapping { cartesian | spherical | cylindrical }
  1997.  
  1998.  Data for `splot`s are usually in regular Euclidean space and are
  1999.  provided in Cartesian coordinates. Such 3-d data require three
  2000.  coordinates (x, y and z) or one coordinate (only z) in each line in
  2001.  the data file.  In order to be able to use spherical or cylindrical
  2002.  coordinate systems, use the `set mapping` command. In both cases two
  2003.  coordinates are expected in each line of the data. For a spherical
  2004.  coordinate system, these are theta and phi (in units as specified by
  2005.  `set angles`) and the mapping is:
  2006.  
  2007.          x = cos( theta ) * cos( phi )
  2008.          y = sin( theta ) * cos( phi )
  2009.          z = sin( phi )
  2010.  
  2011.  For a cylindrical coordinate system, the mapping uses two variables,
  2012.  theta (in units as specified by `set angles`) and z:
  2013.  
  2014.          x = cos( theta )
  2015.          y = sin( theta )
  2016.          z = z
  2017.  
  2018.  Again, note that mapping will affect data file `splot`s only.
  2019. 3 offsets
  2020. ?set offsets
  2021. ?show offsets
  2022. ?offsets
  2023.  The amount of the graph that the plot takes up may be controlled to
  2024.  some extent with the `set offsets` command. This command takes four
  2025.  offset arguments: <left>, <right>, <top> and <bottom>. By default,
  2026.  each offset is 0. Each offset may be a constant or an expression. Left
  2027.  and right offsets are given in units of the x axis, while top and
  2028.  bottom offsets are given in units of the y axis. The plot of sin(x),
  2029.  displayed with offsets of 0, 0, 2, 2 will take up 1/3 of the
  2030.  displayed y axis. Offsets are particularly useful with polar
  2031.  coordinates as a means of compensating for aspect ratio distortion.
  2032.  Offsets are ignored in `splot`s.
  2033.  
  2034.  Syntax:
  2035.          set offsets <left>, <right>, <top>, <bottom>
  2036.          show offsets
  2037. 3 output
  2038. ?set output
  2039. ?show output
  2040. ?output
  2041.  By default, plots are displayed to the standard output. The
  2042.  `set output` command redirects the display to the specified file
  2043.  or device.
  2044.  
  2045.  Syntax:
  2046.          set output {"<filename>"}
  2047.          show output
  2048.  
  2049.  The filename must be enclosed in quotes. If the filename is
  2050.  omitted, output will be sent to the standard output.
  2051.  
  2052.  On machines with popen functions (UNIX), output can be piped
  2053.  through a shell command if the first letter of the filename
  2054.  is '|'.  For instance,
  2055.  
  2056.  Syntax:
  2057.          set output "|lpr -Plaser filename"
  2058.          set output "|lp -dlaser filename"
  2059.  
  2060.  (On MSDOS machines, set output "prn" will direct the output
  2061.  to the default printer.)
  2062.  
  2063. 3 parametric
  2064. ?set parametric
  2065. ?set noparametric
  2066. ?show parametric
  2067. ?parametric
  2068. ?noparametric
  2069.  The `set parametric` command changes the meaning of `plot` (`splot`)
  2070.  from normal functions to parametric functions. The command
  2071.  `set noparametric` changes the plotting style back to normal,
  2072.  single-valued expression plotting.
  2073.  
  2074.  In 2-d plotting, a parametric function is determined by a pair
  2075.  of parametric functions operating on a parameter. An example
  2076.  of a 2-d parametric function would be plot sin(t),cos(t) (which
  2077.  defines a circle).
  2078.  
  2079.  For 3-d plotting, the surface is described as x=f(u,v), y=g(u,v),
  2080.  z=h(u,v). Therefore a triplet of functions are required. An example of
  2081.  3-d parametric function would be cos(u)*cos(v),cos(u)*sin(v),sin(u)
  2082.  (which defines a sphere). It takes three parametric function
  2083.  specifications in terms of the parametric dummy arguments to describe
  2084.  a single graph.
  2085.  
  2086.  The total set of possible plots is a superset of the simple f(x)
  2087.  style plots, since the two (three) functions can describe the
  2088.  x and y (and z) values to be computed separately. In fact,
  2089.  plots of the type t,f(t) (u,v,f(u,v)) are equivalent to those
  2090.  produced with f(x) when the x values are computed using the
  2091.  identity function as the first function.
  2092.  
  2093.  Note that the order the parametric functions are specified is
  2094.  xfunction, yfunction (and zfunction) and that each operates over the
  2095.  common parametric domain.
  2096.  
  2097.  Also, the `set parametric` function implies a new range of values.
  2098.  Whereas the normal f(x) and f(x,y) style plotting assume an xrange
  2099.  and yrange (and zrange), the parametric mode additionally specifies a
  2100.  trange, urange, and vrange. These ranges may be set
  2101.  directly with `set trange`, `set urange` and `set vrange`, or by
  2102.  specifying the range on the `plot` or `splot` commands. Currently
  2103.  the default range for these parametric variables is [-5:5].
  2104.  Setting the ranges to something more meaningful is expected.
  2105. 3 polar
  2106. ?set polar
  2107. ?set nopolar
  2108. ?show polar
  2109. ?polar
  2110. ?nopolar
  2111.  The `set polar` command changes the meaning of the plot from
  2112.  rectangular coordinates to polar coordinates. In polar coordinates,
  2113.  the dummy variable (x) is an angle. The range of this angle is changed
  2114.  from whatever it was to [0:2*pi], or, if degree unit has been selected,
  2115.  to [0:360] (see `set angles`).
  2116.  
  2117.  The command `set nopolar` changes the meaning of the plot back to the
  2118.  default rectangular coordinate system. The range of x is changed from
  2119.  whatever it was to [-10:10].
  2120.  
  2121.  The `set polar` command is not supported for `splot`s.  See the
  2122.  `set mapping` command for similar functionality for `splot`s.
  2123.  
  2124.  While in polar coordinates the meaning of an expression in x is really
  2125.  r = f(x), where x is an angle of rotation. The xrange controls the
  2126.  domain (the angle) of the function, and the yrange controls the range
  2127.  (the radius). The plot is plotted in a rectangular box, and the x and
  2128.  y axes are both in units of the radius. Thus, the yrange controls both
  2129.  dimensions of the plot output. The tics and units are written along
  2130.  the axes rather than at the left and bottom. These unit are offset by
  2131.  <rmin> specified by the `rrange` (See `set rrange`). It is not
  2132.  possible to specify different output dimensions in the x or y
  2133.  directions. The yrange can be used to shift the plot diagonally to
  2134.  display only the first or third quadrants.
  2135.  
  2136.  Syntax:
  2137.          set polar
  2138.          set nopolar
  2139.          show polar
  2140.  Example:
  2141.          set polar
  2142.          plot x*sin(x)
  2143.          plot [-2*pi:2*pi] [-3:3] x*sin(x)
  2144.  The first plot uses the default polar angular domain of 0 to 2*pi.
  2145.  The radius (and the size of the plot) is scaled automatically. The
  2146.  second plot expands the domain, and restricts the range of the radius
  2147.  (and the size of the plot) to [-3:3].
  2148. 3 rrange
  2149. ?set rrange
  2150. ?show rrange
  2151. ?rrange
  2152.  The `set rrange` command sets the radial range used to compute x and y
  2153.  values when in polar mode. If not in polar mode (see `set polar`) then
  2154.  this range is not used. Use of this command offsets the polar
  2155.  singularity to the <rmin> value and shifts the units on the axes tic
  2156.  marks. For instance, `set rrange [-40:40]` would set the origin to -40
  2157.  and would plot values of radial values between -40 to 40. Thus, if
  2158.  360 degrees of data were plotted, then the plot would extend 80 units
  2159.  in radially from the origin.  To view the entire plot,  a
  2160.  `set yrange [-80:80]` command would create a square viewport with
  2161.  a circular plot tangent at the axes.  Because `xrange` is used
  2162.  specify the angular extent, only a square viewport can be specified
  2163.  by `yrange`.  For instance, `set yrange [0:80]` would display the
  2164.  first quadrant and `set yrange [-80:0]` would display the third
  2165.  quadrant.  Any square viewport of any size can be specified but it
  2166.  is constrained to be centered on a 45 degree line.
  2167.  
  2168.  This range may also be specified on the `plot` command line when in
  2169.  polar mode.
  2170.  
  2171.  Syntax:
  2172.          set rrange [{<rmin> : <rmax>}]
  2173.  
  2174.  where <rmin> and <rmax> terms are constants or expressions.
  2175.  
  2176.  Both the <rmin> and <rmax> terms are optional. Anything omitted will
  2177.  not be changed, so
  2178.          set rrange [:10]
  2179.  changes rmax to 10 without affecting rmin.
  2180. 3 samples
  2181. ?set samples
  2182. ?show samples
  2183. ?samples
  2184.  The sampling rate of functions may be changed by the `set samples`
  2185.  command. By default, sampling is set to 100 points. A higher sampling
  2186.  rate will produce more accurate plots, but will take longer. This
  2187.  parameter no longer has any effect on data-file plotting.
  2188.  
  2189.  Syntax:
  2190.          set samples <samples_1> {,<samples_2>}
  2191.          show samples
  2192.  
  2193.  When a 2-d plot is being done, only the value of <samples_1> is
  2194.  relevant.
  2195.  
  2196.  When a surface plot is being done without the removal of hidden
  2197.  lines, the value of samples specifies the number of samples that are
  2198.  evaluated per iso line. Each iso-v line will have <sample_1> samples
  2199.  and each iso-u line will have <sample_2> samples. If you only specify
  2200.  <samples_1>, <samples_2> will be set to the same value as <samples_1>.
  2201.  See also `set isosamples`.
  2202. 3 size
  2203. ?set size
  2204. ?show size
  2205. ?size
  2206.  The `set size` command scales the displayed size of the plot.  On some
  2207.  terminals, changing the size of the plot will result in text being
  2208.  misplaced. Increasing the size of the plot may produce strange
  2209.  results. Decreasing is safer.
  2210.  
  2211.  Syntax:
  2212.  
  2213.          set size {<xscale>,<yscale>}
  2214.          show size
  2215.  
  2216.  The <xscale> and <yscale> values are the scaling factors for the size.
  2217.  The defaults (1,1) are selected if the scaling factors are omitted.
  2218.  
  2219.  Examples:
  2220.  
  2221.  To set the size to normal size use:
  2222.          set size
  2223.  To make the plot half size use:
  2224.          set size 0.5,0.5
  2225.  To make a landscape plot have a 1:1 aspect ratio in polar mode use:
  2226.          set size 0.721,1.0
  2227.  To show the size use:
  2228.          show size
  2229.  
  2230.  For the LaTeX and Fig terminals the default size (scale factor 1,1)
  2231.  is 5 inches wide by 3 inches high. The big Fig terminal (`bfig`) is 7
  2232.  inches wide by 5 inches high. The postscript default is landscape mode
  2233.  10 inches wide and 7 inches high.
  2234.  Note that the size of the plot includes the space used by the labels;
  2235.  the plotting area itself is smaller.
  2236. 3 style
  2237. ?set style
  2238. ?show style
  2239. ?style
  2240. ?lines
  2241. ?points
  2242. ?linespoints
  2243. ?impulses
  2244. ?dots
  2245. ?steps
  2246. ?errorbars
  2247. ?boxes
  2248. ?boxerrorbars
  2249. ?bargraph
  2250.  Plots may be displayed in one of eight styles: `lines`, `points`,
  2251.  `linespoints`, `impulses`, `dots`, `steps`, `errorbars`, `boxes`, or
  2252.  `boxerrorbars`.  The `lines` style connects adjacent points with lines.
  2253.  The `points` style displays a small symbol at each point.
  2254.  The `linespoints` style does both `lines` and `points`.
  2255.  The `impulses` style displays a vertical line from the x axis
  2256.  (or from the grid base for `splot`) to each point. The `dots` style
  2257.  plots a tiny dot at each point; this is useful for
  2258.  scatter plots with many points.
  2259.  
  2260.  The `errorbars` style is only relevant to 2-d data file plotting. It
  2261.  is treated like `points` for `splot`s and function `plot`s. For data
  2262.  `plot`s, `errorbars` is like `points`, except that a vertical error
  2263.  bar is also drawn: for each point (x,y), a line is drawn from
  2264.  (x,ylow) to (x,yhigh). A tic mark is placed at the ends of the error
  2265.  bar. The ylow and yhigh values are read from the data file's columns,
  2266.  as specified with the `using` option to plot. See `plot errorbars` for
  2267.  more information.
  2268.  
  2269.  The `boxes` style is only relevant to 2-d plotting.  It draws
  2270.  a box centred about the given x coordinate from the yaxis to the given
  2271.  y coordinate.   The width of the box is obtained in one of three
  2272.  ways.  If a data file has a fifth column, this will be used to set
  2273.  the width of the box.  Otherwise, if a width has been set using the
  2274.  `set boxwidth` command, this will be used.  Otherwise the width of each
  2275.  box will be calculated automatically so that it touches the adjacent
  2276.  boxes.  Another style called `boxerrorbars` is also available and is
  2277.  only  relevant to 2-d data file plotting.  This style is a combination
  2278.  of the `boxes` and `errorbars` styles.
  2279.  
  2280.  The `steps` style is only relevant to 2-d plotting.  This style
  2281.  connects consecutive points with two line segments: the first
  2282.  from (x1,y1) to (x2,y1) and the second from (x2,y1) to (x2,y2).
  2283.  
  2284.  Default styles are chosen with the `set function style` and
  2285.  `set data style` commands. See `plot style` for information about
  2286.  how to override the default plotting style for individual functions.
  2287.  
  2288.  Syntax:
  2289.          set function style <style>
  2290.          set data style <style>
  2291.          show function style
  2292.          show data style
  2293.  
  2294.  where <style> is `lines`, `points`, `linespoints`, `impulses`,
  2295.  `dots`, `steps`, `errorbars`, `boxes`, or `boxerrorbars`.
  2296. 3 surface
  2297. ?set surface
  2298. ?set nosurface
  2299. ?show surface
  2300. ?surface
  2301.  `set surface` controls the display of surfaces. It is useful if
  2302.  contours are to be displayed by themselves. Whenever `set nosurface`
  2303.  is issued, no surface isolines/mesh will be drawn. See also
  2304.  `set contour`.
  2305.  
  2306.  Syntax:
  2307.          set surface
  2308.          set nosurface
  2309.          show surface
  2310. 3 terminal
  2311. ?set terminal
  2312. ?show terminal
  2313. ?terminal
  2314.  GNUPLOT supports many different graphics devices. Use the
  2315.  `set terminal` command to select the type of device for which
  2316.  GNUPLOT will produce output.
  2317.  
  2318.  Syntax:
  2319.          set terminal {<terminal-type>}
  2320.          show terminal
  2321.  
  2322.  If <terminal-type> is omitted, GNUPLOT will list the available
  2323.  terminal types. <terminal-type> may be abbreviated.
  2324.  
  2325.  Use `set output` to redirect this output to a file or device.
  2326.  
  2327.  Several terminals have additional options. For example, see `dumb`,
  2328.  `iris4d`, `hpljii` or `postscript`.
  2329. 4 aifm
  2330. ?set terminal aifm
  2331. ?aifm
  2332.  Several options may be set in the Adobe Illustrator 3.0 driver.
  2333.  
  2334.  Syntax:
  2335.          set terminal aifm {<color>}
  2336.                                  {"<fontname>"} {<fontsize>}
  2337.  
  2338.  Selecting default sets all options to their default values.
  2339.  <color> is either `color` or `monochrome`.
  2340.  "<fontname>" is the name of a valid PostScript font.
  2341.  <fontsize> is the size of the font in PostScript points, before
  2342.  scaling by the `set size` command.
  2343.  Defaults are `monochrome`, "Helvetica", and 14pt.
  2344.  
  2345.  Also, since AI does not really support multiple pages, multiple
  2346.  graphs will be output directly on one another.  However, each graph
  2347.  will be grouped individually, making it easy to separate them inside
  2348.  AI (just pick them up and move them).
  2349.  
  2350.  Examples:
  2351.  
  2352.          set term aifm
  2353.          set term aifm 22
  2354.          set size 0.7,1.4
  2355.          set term aifm color "Times-Roman" 14
  2356.  
  2357. 4 atari ST
  2358. ?set terminal atari
  2359. ?atari
  2360.  The `atari` terminal has an option to set the character size and the
  2361.  screen colors.  The driver expects a space separated list the char size
  2362.  and maximal 16 3 digit hex numbers where each digit represents RED, GREEN
  2363.  and BLUE (in that order).  The range of 0-15 is scaled to whatever color
  2364.  range the screen actually has.  On a normal ST screen, odd and even
  2365.  intensities are the same.
  2366.  
  2367.  Examples:
  2368.  
  2369.         set terminal atari 4 # (use small (6x6) font)
  2370.         set terminal atari 6 0 # (set monochrome screen to white on black)
  2371.         set terminal atari 13 0 fff f00 f0 f ff f0f ff0
  2372.         # (set first eight colors to black, white, green, blue, cyan, \
  2373.           purple, and yellow and use large font (8x16).)
  2374.  
  2375.  Additionally, if an environment variable GNUCOLORS exists, its
  2376.  contents are interpreted as an options string, but an explicit terminal
  2377.  option takes precedence.
  2378.  
  2379. 4 dumb
  2380. ?set terminal dumb
  2381. ?dumb
  2382.  The dumb terminal driver has an optional size specification.
  2383.  
  2384.  Syntax:
  2385.          set terminal dumb {<xsize> <ysize>}
  2386.  
  2387.  where <xsize> and <ysize> set the size of the dumb terminals. Default
  2388.  is 79 by 24.
  2389.  
  2390.  Examples:
  2391.          set term dumb
  2392.          set term dumb 79 49 # VGA screen--why would anyone want to do that?
  2393. 4 epson
  2394. ?set terminal epson
  2395. ?set terminal epson180
  2396. ?set terminal epson60
  2397. ?set terminal starc
  2398. ?set terminal tandy60
  2399. ?epson
  2400.  
  2401.  This set of drivers support Epson printers and derivatives.   See also
  2402.  the NEC driver.  `epson` is a generic 9 wire printer with a resolution
  2403.  of 512x384. `starc` is a Star Color printer with the same resolution.
  2404.  `epson180` and `epson60` are 180 dpi and 60 dpi drivers for newer
  2405.  24 wire printers.  This also includes bubble jet printers.  Their
  2406.  resolutions are 1260x1080 and 480x360, respectively.  The `tandy60`
  2407.  is identical to the `epson60` driver with one additional escape
  2408.  sequence to start IBM mode.  With all of these drivers, a binary
  2409.  copy is required on a PC to print.  Do not use `print`.
  2410.  
  2411.         copy file /b lpt1:
  2412.  
  2413.  
  2414. 4 gpic
  2415. ?set terminal gpic
  2416. ?gpic
  2417.  
  2418.  This driver is only known to work the Free Software Foundation
  2419.  gpic/groff package.  Modification for the Document Workbench
  2420.  pic/troff package would be appreciated.  FSF gpic can also
  2421.  produce TeX output.
  2422.  
  2423.  A simple graph can be formatted using
  2424.  
  2425.       groff -p -mpic -Tps file.pic > file.ps.
  2426.  
  2427.  The output from pic can be pipe-lined into eqn, so it is possible to put
  2428.  complex functions in a graph with the set label and set {x/y}label commands.
  2429.  For instance,
  2430.  
  2431.     set ylab '@space 0 int from 0 to x alpha ( t ) roman d t@'
  2432.  
  2433.  Will label the y-axis with a nice integral if formatted with the
  2434.  command:
  2435.  
  2436.     gpic filename.pic | geqn -d@@ -Tps | groff -m[macro-package] -Tps
  2437.          > filename.ps
  2438.  
  2439.  Figures made this way can be scaled to fit into a document. The pic
  2440.  language is easy to understand, so the graphs can be edited by hand if
  2441.  need be. All coordinates in the pic-file produced by gnuplot are given
  2442.  as x+gnuplotx and y+gnuploty. By default x and y are given the value 0
  2443.  If this line is removed with an editor in a number of files one can
  2444.  put several graphs i one figure like this (default size is 5.0x3.0 inches)
  2445.  
  2446.     .PS 8.0
  2447.     x=0;y=3
  2448.     copy "figa.pic"
  2449.     x=5;y=3
  2450.     copy "figb.pic"
  2451.     x=0;y=0
  2452.     copy "figc.pic"
  2453.     x=5;y=0
  2454.     copy "figd.pic"
  2455.     .PE
  2456.  
  2457.  This will produce an 8 inches wide figure with four graphs in two rows
  2458.  on top of each other
  2459.  
  2460.  One can also achieve the same thing by the command
  2461.  
  2462.    set term pic x y
  2463.  
  2464.  For example, using
  2465.  
  2466.    .PS 6.0
  2467.    copy "trig.pic"
  2468.    .PE
  2469.  
  2470. 4 hpljii
  2471. ?set terminal hpljii
  2472. ?hpljii
  2473.  The HP LaserJet II and HP DeskJet drivers have a single option.
  2474.  
  2475.  Syntax:
  2476.          set terminal hpljii {<resolution>}
  2477.          set terminal hpdj   {<resolution>}
  2478.  
  2479.  where <resolution> is the resolution of the output in dots per inch.
  2480.  It must be `75`, `100`, `150` or `300`.  Note: there must be
  2481.  enough memory available to rasterize at the higher resolutions.
  2482.  
  2483.  Example:
  2484.          set terminal hpljii 150
  2485.  
  2486. 4 latex
  2487. ?set terminal latex
  2488. ?latex
  2489.  The LaTeX and EMTeX driver allows one to specify a font type and a font
  2490.  size for the labels around a gnuplot graph.
  2491.  
  2492.  Options are:
  2493.  Fonts:
  2494.        default          (Roman 10 point)
  2495.        courier
  2496.        roman
  2497.  
  2498.  at any size you specify. (BEWARE METAFONT will not like odd sizes.)
  2499.  eg.
  2500.        gnuplot> set term latex courier 5
  2501.  
  2502.  Unless your driver is capable of building fonts at any size (e.g. dvips),
  2503.  stick to the standard 10, 11 and 12 point size.
  2504.  
  2505. 4 iris4d
  2506. ?set terminal iris4d
  2507. ?iris4d
  2508.  The iris4d driver can operate in two modes.
  2509.  
  2510.  Syntax:
  2511.          set terminal iris4d {24}
  2512.  
  2513.  If the hardware supports only 8 bits, use the default
  2514.  `set terminal iris4d`. If, however, the hardware supports 24 bits
  2515.  (8 per red/green/blue), use `set terminal iris4d 24`.
  2516.  
  2517.  When using 24-bit mode, the colors can be directly specified via the
  2518.  file .gnuplot_iris4d that is searched in the current directory and
  2519.  then in the home directory specified by the HOME environment variable.
  2520.  This file holds RGB values for the background, border, labels and nine
  2521.  plotting colors, in that order. For example, here is a file containing
  2522.  the default colors:
  2523.  
  2524.          85   85   85     /* Back Ground */
  2525.          0    0    0      /* Boundary */
  2526.          170  0    170    /* Labeling */
  2527.          85   255  255    /* Plot Color 1 */
  2528.          170  0    0      /* Plot Color 2 */
  2529.          0    170  0      /* Plot Color 3 */
  2530.          255  85   255    /* Plot Color 4 */
  2531.          255  255  85     /* Plot Color 5 */
  2532.          255  85   85     /* Plot Color 6 */
  2533.          85   255  85     /* Plot Color 7 */
  2534.          0    170  170    /* Plot Color 8 */
  2535.          170  170  0      /* Plot Color 9 */
  2536.  
  2537.  This file has exactly 12 lines of RGB triples. No empty lines are
  2538.  allowed and anything after the third number in line is ignored.
  2539.  
  2540. 4 mf
  2541. ?set terminal mf
  2542. ?mf
  2543. ?metafont
  2544.  The mf terminal driver creates a input file to the MetaFont program.
  2545.  Thus a figure may be used in the TeX document in the same way as a
  2546.  character is.
  2547.  
  2548.  To use the plot in a document the MetaFont program must be run
  2549.  with the output file from GnuPlot as input. Thus, the user needs a basic
  2550.  knowledge of the font creating process and inclusion of a new font in a
  2551.  document. However, if the Metafont program is set up properly at the
  2552.  local site an unexperienced user could perform the operation without
  2553.  much trouble.
  2554.  
  2555.  The text support is based on a MetaFont character set.
  2556.  Currently the Computer Modern Roman font set is input but the
  2557.  user are in principal free to chose whatever fonts he/she needs.
  2558.  The MetaFont source files for the chosen font must be available.
  2559.  Each character is stored in a separate picture variable in MetaFont. These
  2560.  variables may be manipulated (rotated, scaled etc.) when characters are
  2561.  needed. The drawback is the interpretation time in the MetaFont
  2562.  program. On some machines (i.e. PC) the limited amount of memory available
  2563.  may also cause problem if too many pictures are stored.
  2564.  
  2565. 5 Metafont Instructions
  2566. ?set terminal mf detailed
  2567. ?mf detailed
  2568. ?metafont detailed
  2569.  
  2570.  - Set your terminal to metafont:
  2571.    set terminal mf
  2572.  - Select an output-file, e.g.:
  2573.    set output "myfigures.mf"
  2574.  - Do your plots. Each plot will generate a separate character. Its default
  2575.  size will be 5*3 inches. You can change the size by saying set size 0.5,0.5
  2576.  or whatever fraction of the default size you want to have.
  2577.  
  2578.  - Quit gnuplot.
  2579.  
  2580.  - Generate a tfm- and gf-file by running metafont on the output of gnuplot.
  2581.  Since the plot is quite large (5*3 in), you will have to use a version
  2582.  of metafont that has a value of at least 150000 for memmax. On Unix-systems
  2583.  these are conventionally installed under the name bigmf. For the following
  2584.  assume that the command virmf stands for a big version of metafont. For example:
  2585.  
  2586.  - Invoke metafont:
  2587.      virmf '&plain'
  2588.  - Select the output device: At the metafont prompt ('*') type:
  2589.      \mode:=CanonCX;     % or whatever printer you use
  2590.  - Optionally select a magnification:
  2591.      mag:=1;             % or whatever you wish
  2592.  - Input the gnuplot-file:
  2593.      input myfigures.mf
  2594.  On a typical Unix machine there will usually be a script called mf that
  2595.  executes virmf '&plain', so you probably can substitute mf for virmf &plain.
  2596.  This will generate two files: mfput.tfm and mfput.$$$gf (where $$$ indicates
  2597.  the resolution of your device). The above can be conveniently achieved by
  2598.  typing everything on the command line, e.g.:
  2599.  virmf '&plain' '\mode:=CanonCX; mag:=1; input myfigures.mf'
  2600.  In this case the output files will be named myfigures.tfm and
  2601.  myfigures.300gf.
  2602.  
  2603.  - Generate a pk-file from the gf-file using gftopk:
  2604.    gftopk myfigures.300gf myfigures.300pk
  2605.  The name of the output-file for gftopk depends on the dvi-driver you use.
  2606.  Ask your local TeX-administrator about the naming conventions.
  2607.  Next, either install the tfm- and pk-files in the appropriate directories,
  2608.  or set your environment-variables properly. Usually this involves setting
  2609.  TEXFONTS to include the current directory and do the same thing for the
  2610.  environment-variable that your dvi-driver uses (no standard name here...).
  2611.  This step is necessary so that TeX will find the font-metric file and your
  2612.  dvi-driver will find the pk-file.
  2613.  
  2614.  - To include your plots in your document you have to tell TeX the font:
  2615.    \font\gnufigs=myfigures
  2616.  Each plot you made is stored in a single character. The first plot is
  2617.  character 0, the second is character 1, and so on... After doing the above
  2618.  step you can use the plots just like any other characters. Therefore, to
  2619.  place plots 1 and 2 centered in your document, all you have to do is:
  2620.    \centerline{\gnufigs\char0}
  2621.    \centerline{\gnufigs\char1}
  2622.  in plain TeX. For LaTeX you can, of course, use the picture environment
  2623.  and place the plot according to your wishes using the \makebox and \put
  2624.  macros.
  2625.  
  2626.  It saves you a lot of time, once you have generated the
  2627.  font, since TeX handles the plots as characters and uses minimal time to
  2628.  place them. Also the documents you make change more often, than the plots
  2629.  do. Also it saves a lot of TeX-memory. One last advantage of
  2630.  using the metafont-driver is that the dvi-file really remains device
  2631.  independent, because no \special-commands are used as in the eepic- and
  2632.  tpic-drivers.
  2633. 4 mif
  2634. ?set terminal mif
  2635. ?mif
  2636.  Several options may be set in the MIF 3.00 driver.
  2637.  
  2638.  Syntax:
  2639.       set terminal mif {<pentype>} {<curvetype>} {<help>}
  2640.  
  2641.  <pentype> selects "colour" of the graphics.
  2642.       `colour`     plot lines with line types >= 0 in colour (MIF sep. 2-7).
  2643.       `monochrome` plot all line types in black (MIF sep. 0).
  2644.  <curvetype> selects how "curves" are plotted.
  2645.       `polyline`   plot curves as continuous curves.
  2646.       `vectors`    plot curves as collections of vectors
  2647.  <help> print online help on standard error output.
  2648.       `help`       print a short description of the usage, and the options
  2649.       `?`          print a short description of the usage
  2650.  
  2651.  This terminal driver produces Frame Maker MIF format version 3.00. It
  2652.  plots in MIF Frames with the size 15*10 [cm], and plot primitives with
  2653.  the same pen will be grouped in the same MIF group. Plot primitives in
  2654.  a gnuplot plot will be plotted in a MIF Frame, and several MIF Frames
  2655.  are collected in one large MIF Frame.
  2656.  Plot primitives with line types >= 0 will as default be drawn in colour.
  2657.  As default curves are plotted as continuous lines. The MIF font used for
  2658.  text is "Times".
  2659.  
  2660.  Examples:
  2661.  
  2662.       set term mif
  2663.       set term mif vectors
  2664.       set term mif help
  2665.  
  2666.  
  2667. 4 nec-cp6
  2668. ?set terminal nec-cp6
  2669. ?nec-cp6
  2670.  One option may be set in the nec-cp6 driver.  The resolution of this
  2671.  driver is 400x320.
  2672.  
  2673.  Syntax:
  2674.          set terminal nec-cp6 monochrome
  2675.          set terminal nec-cp6 color
  2676.          set terminal nec-cp6 draft
  2677.  
  2678. 4 pbm
  2679. ?set terminal pbm
  2680. ?pbm
  2681.  Several options may be set in the PBMplus driver.
  2682.  
  2683.  Syntax:
  2684.          set terminal pbm {<fontsize>} {<colormode>}
  2685.  
  2686.  where <fontsize> is `small`, `medium`, or `large` and <colormode> is
  2687.  `monochrome`, `gray` or `color`.
  2688.  Default size is 640 pixels wide and 480 pixels high.
  2689.  The output for `monochrome` is a portable bitmap (one bit per pixel).
  2690.  The output for `gray` is a portable graymap (three bits per pixel).
  2691.  The output for `color` is a portable pixmap (color, four bits per pixel).
  2692.  The output of these drivers can be used with Jef Poskanzer's
  2693.  excellent PBMPLUS package which provides programs to convert
  2694.  the above PBMPLUS formats to GIF, TIFF, MacPaint, Macintosh PICT,
  2695.  PCX, X11 bitmap and many others.
  2696.  
  2697.  Examples:
  2698.  
  2699.          set term pbm small
  2700.          set size 2,2
  2701.          set term pbm color medium
  2702.  
  2703. 4 pcl5
  2704. ?set terminal pcl5
  2705. ?pcl5
  2706.  Three options may be set in the pcl5 driver.  The driver
  2707.  actually uses HPGL-2 but there is a name conflict among
  2708.  the terminal devices.
  2709.  
  2710.  Syntax:
  2711.          set terminal pcl5 {<mode>} {<font>} {<fontsize>}
  2712.  
  2713.  where <mode> is `landscape`, or `portrait`, <font> is `stick`,
  2714.  `univers`, or `cg_times`, and fontsize is the size in points.
  2715.          set terminal pcl5 landscape
  2716.  
  2717. 4 postscript
  2718. ?set terminal postscript
  2719. ?postscript
  2720.  Several options may be set in the PostScript driver.
  2721.  
  2722.  Syntax:
  2723.          set terminal postscript {<mode>} {<color>} {<dashed>}
  2724.                                  {"<fontname>"} {<fontsize>}
  2725.  
  2726.  where <mode> is `landscape`, `portrait`, `eps` or `default`.
  2727.  Selecting default sets all options to their defaults.
  2728.  <color> is either `color` or `monochrome`.
  2729.  <dashed> is either `solid` or `dashed`.
  2730.  "<fontname>" is the name of a valid PostScript font.
  2731.  <fontsize> is the size of the font in PostScript points.
  2732.  Defaults are `landscape`, `monochrome`, `dashed`, "Helvetica", and 14pt.
  2733.  Default size of PostScript plot is landscape mode 10 inches wide
  2734.  and 7 inches high.
  2735.  
  2736.  To get EPS output, use the `eps` mode and make only one plot per file.
  2737.  In `eps` mode the whole plot is halved in size; the fonts are half the
  2738.  given size, and the plot is 5 inches wide and 3.5 inches high.
  2739.  
  2740.  Examples:
  2741.  
  2742.          set term postscript default       # old postscript
  2743.          set term postscript landscape 22  # old psbig
  2744.          set term postscript eps 14   # old epsf1
  2745.          set term postscript eps 22   # old epsf2
  2746.          set size 0.7,1.4
  2747.          set term post portrait color "Times-Roman" 14
  2748.  
  2749. 4 regis
  2750. ?set terminal regis
  2751. ?table
  2752.  The `regis` terminal device has the option of using 4 or 16
  2753.  colors.  The default is 4.  For example:
  2754.         set term regis 16
  2755.  
  2756. 4 table
  2757. ?set terminal table
  2758. ?table
  2759.  Instead of producing a picture, term type `table` prints out
  2760.  the evaluation results in a multicolumn ASCII table of X Y Z values.
  2761.  For those times when you really want to see the numbers, now you
  2762.  can see them on the screen or save to a file.
  2763.  
  2764. 4 windows
  2765. ?set terminal windows
  2766. ?windows
  2767.  Three options may be set in the windows driver.
  2768.  
  2769.  Syntax:
  2770.          set terminal windows {<color>} {"<fontname>"} {<fontsize>}
  2771.  
  2772.  `<color>` is either `color` or `monochrome`.
  2773.  `"<fontname>"` is the name of a valid Windows font.
  2774.  `<fontsize>` is the size of the font in points.
  2775.  
  2776. 5 graph-menu
  2777. ?set terminal windows graph-menu
  2778. ?graph-menu
  2779.  The `gnuplot graph` window has the following options on a pop up menu
  2780.  accessed by pressing the right mouse button or selecting `Options`
  2781.  from the system menu:
  2782.  
  2783.  `Bring to Top` when checked brings the graph window to
  2784.  the top after every plot.
  2785.  
  2786.  `Color` when checked enables color linestyles.
  2787.  When unchecked it forces monochrome linestyles.
  2788.  
  2789.  `Copy to Clipboard` copies a bitmap and a Metafile picture.
  2790.  
  2791.  `Background...` sets the window background color.
  2792.  
  2793.  `Choose Font...` selects the font used in the graphics window.
  2794.  
  2795.  `Line Styles...` allows customization of the line colors
  2796.  and styles.
  2797.  
  2798.  `Print...` prints the graphics windows using a Windows printer
  2799.  driver and allows selection of the printer and scaling of the output.
  2800.  The output produced by `Print` is not as good as that from gnuplot's
  2801.  own printer drivers.
  2802.  
  2803.  `Update wgnuplot.ini` saves the current window locations, window
  2804.  sizes, text window font, text window font size, graph window font,
  2805.  graph window font size, background color and linestyles to the
  2806.  initialisation file `WGNUPLOT.INI`.
  2807.  
  2808. 5 printing
  2809. ?set terminal windows printing
  2810. ?printing
  2811.  In order of preference, graphs may be be printed in the
  2812.  following ways.
  2813.  
  2814.  `1.` Use the gnuplot command `set terminal` to select a printer
  2815.  and `set output` to redirect output to a file.
  2816.  
  2817.  `2.` Select the `Print...` command from the `gnuplot graph` window.
  2818.  An extra command `screendump` does this from the text window.
  2819.  
  2820.  `3.` If `set output "PRN"` is used, output will go to a temporary file.
  2821.  When you exit from gnuplot or when you change the output with another
  2822.  `set output` command, a dialog box will appear for you to select
  2823.  a printer port.  If you choose OK, the output will be printed
  2824.  on the selected port, passing unmodified through the print
  2825.  manager.  It is possible to accidently (or deliberately) send
  2826.  printer output meant for one printer to an incompatible printer.
  2827.  
  2828. 5 text-menu
  2829. ?set terminal windows text-menu
  2830. ?text-menu
  2831.  The `gnuplot text` window has the following options on a pop up menu
  2832.  accessed by pressing the right mouse button or selecting `Options`
  2833.  from the system menu:
  2834.  
  2835.  `Copy to Clipboard` copies marked text to the clipboard.
  2836.  
  2837.  `Paste` copies text from the clipboard as if typed by the user.
  2838.  
  2839.  `Choose Font...` selects the font used in the text window.
  2840.  
  2841.  `System Colors` when selected makes the text window honor the
  2842.  System Colors set using the Control Panel.  When unselected,
  2843.  text is black or blue on a white background.
  2844.  
  2845.  `Update wgnuplot.ini` saves the current text window location, text
  2846.  window size, text window font and text window font size to the
  2847.  initialisation file `WGNUPLOT.INI`.
  2848.  
  2849.  `MENU BAR`
  2850.  
  2851.  If the menu file `WGNUPLOT.MNU` is found in the same directory as
  2852.  WGNUPLOT.EXE, then the menu specified in `WGNUPLOT.MNU` will
  2853.  be loaded.
  2854.  
  2855.  Menu commands are:
  2856.    [Menu]       Start a new menu with the name on the following line
  2857.    [EndMenu]    End current menu.
  2858.    --           Insert a horizontal menu separator
  2859.    |            Insert a vertical menu separator
  2860.    [Button]     Put next macro on a push button instead of a menu.
  2861.  
  2862.  Macros take two lines with the macro name (menu entry) on the first
  2863.  line and the macro on the second line.  Leading spaces are ignored.
  2864.  
  2865.  Macros commands are:
  2866.    [INPUT]      Input string with prompt terminated by [EOS] or {ENTER}
  2867.    [EOS]        End Of String terminator.  Generates no output.
  2868.    [OPEN]       Get name of file to open from list box, with title of
  2869.                 list box terminated by [EOS], followed by default
  2870.                 filename terminated by [EOS] or {ENTER}
  2871.                 This uses COMMDLG.DLL from Windows 3.1.
  2872.    [SAVE]       Get name of file to save.  Similar to [OPEN]
  2873.  
  2874.  Macros character substitutions are:
  2875.    {ENTER}      Carriage Return '\r'
  2876.    {TAB}        Tab     '\011'
  2877.    {ESC}        Escape  '\033'
  2878.    {^A}         '\001'
  2879.    ...
  2880.    {^_}         '\031'
  2881.  
  2882.  Macros are limited to 256 characters after expansion.
  2883.  
  2884. 5 wgnuplot.ini
  2885. ?set terminal windows wgnuplot.ini
  2886. ?wgnuplot.ini
  2887.  Windows gnuplot will read some of its options from the `[WGNUPLOT]` section
  2888.  of `WGNUPLOT.INI` in the Windows directory.
  2889.  An example `WGNUPLOT.INI` file is shown below.
  2890.   [WGNUPLOT]
  2891.   TextOrigin=0 0
  2892.   TextSize=640 150
  2893.   TextFont=Terminal,9
  2894.   GraphOrigin=0 150
  2895.   GraphSize=640 330
  2896.   GraphFont=Arial,10
  2897.   GraphColor=1
  2898.   GraphToTop=1
  2899.   GraphBackground=255 255 255
  2900.   Border=0 0 0 0 0
  2901.   Axis=192 192 192 2 2
  2902.   Line1=0 0 255 0 0
  2903.   Line2=0 255 0 0 1
  2904.   Line3=255 0 0 0 2
  2905.   Line4=255 0 255 0 3
  2906.   Line5=0 0 128 0 4
  2907.  The `GraphFont` entry specifies the font name and size in points.
  2908.  The 5 numbers given in the `Border`, `Axis` and `Line` entries are
  2909.  the `Red` intensity (0-255), `Green` intensity, `Blue` intensity,
  2910.  `Color Linestyle` and `Mono Linestyle`.
  2911.  `Linestyles` are 0=SOLID, 1=DASH, 2=DOT, 3=DASHDOT, 4=DASHDOTDOT.
  2912.  In the example `WGNUPLOT.INI` file above, Line 2 is a green solid
  2913.  line in color mode, or a dashed line in monochrome mode.
  2914.  The default line width is 1 pixel.  If `Linestyle` is negative it
  2915.  specifies the width of a SOLID line in pixels.
  2916.  Line1 and any linestyle used with the `points` style must be
  2917.  SOLID with unit width.
  2918.  
  2919. 5 windows3.0
  2920. ?set terminal windows windows3.0
  2921. ?windows3.0
  2922.  Windows 3.1 is preferred, but WGNUPLOT will run under Windows 3.0
  2923.  with the following restrictions:
  2924.  
  2925.  `1.` COMMDLG.DLL and SHELL.DLL (available with Windows 3.1 or Borland C++ 3.1)
  2926.  must be in the windows directory.
  2927.  
  2928.  `2.` WGNUPLOT.HLP produced by Borland C++ 3.1 is in Windows 3.1 format.
  2929.  You need to use the WINHELP.EXE supplied with Borland C++ 3.1.
  2930.  
  2931.  `3.` It won't run in real mode due to lack of memory.
  2932.  
  2933.  `4.` Truetype fonts are not available in the graph window.
  2934.  
  2935.  `5.` Drag-drop does not work.
  2936.  
  2937. 3 tics
  2938. ?set tics
  2939. ?show tics
  2940. ?tics
  2941.  By default, tics are drawn inwards from the border on all four sides.
  2942.  The `set tics` command can be used to change the tics to be
  2943.  drawn outwards on the left and bottom borders only.
  2944.  This is useful when doing impulse plots.
  2945.  
  2946.  Syntax:
  2947.          set tics {<direction>}
  2948.          show tics
  2949.  
  2950.  where <direction> may be `in` or `out`. `set tics` defaults to `in`.
  2951.  
  2952.  See also the `set xtics`, `set ytics`, and `set ztics` command for more
  2953.  control of tic marks.
  2954. ?set ticslevel
  2955. ?show ticslevel
  2956. ?ticslevel
  2957.  Using splot, in 3-d plots, one can adjust the relative height of the
  2958.  vertical (Z) axis using `set ticslevel`. The numeric argument provided
  2959.  specifies the location of the bottom of the scale. a zero will put it
  2960.  on the bottom grid and any positive number somewhere along the z axis.
  2961.  
  2962.  Syntax:
  2963.          set ticslevel {<level>}
  2964.          show tics
  2965.  
  2966.  where <level> is a non negative numeric argument. For example,
  2967.  
  2968.          set ticslevel 0.5
  2969.  
  2970.  sets the tics level to the default value.
  2971.  
  2972.  See also the `set view`.
  2973. 3 time
  2974. ?set time
  2975. ?show time
  2976. ?time
  2977.  The optional `set time` places the time and date of the plot either
  2978.  at the top or bottom of the left margin. The exact location is
  2979.  device dependent.
  2980.  
  2981.  Syntax:
  2982.          set time {<xoff>}{,<yoff>}
  2983.          set notime
  2984.          show time
  2985.  
  2986.  Specifying constants <xoff> or <yoff> as optional offsets for the time
  2987.  will move the time <xoff> or <yoff> character screen coordinates. For
  2988.  example,
  2989.  
  2990.          set time ,-3
  2991.  
  2992.  will change only the y offset of the time, moving the title down by
  2993.  roughly the height of three characters.
  2994.  
  2995. 3 title
  2996. ?set title
  2997. ?show title
  2998. ?title
  2999.  The `set title` command produces a plot title that is centered at the
  3000.  top of the plot. Using the optional x,y screen offsets, the title
  3001.  can be placed anywhere on the plot. `set title` with no parameters
  3002.  clears the title.
  3003.  
  3004.  Syntax:
  3005.           set title {"<title-text>"} {<xoff>}{,<yoff>}
  3006.           show title
  3007.  
  3008.  Specifying constants <xoff> or <yoff> as optional offsets for the
  3009.  title will move the title <xoff> or <yoff> character screen
  3010.  coordinates. Note these are screen coordinates and not plot
  3011.  coordinates. For example,
  3012.  
  3013.           set title ,-1
  3014.  
  3015.  will change only the y offset of the title, moving the title down by
  3016.  roughly the height of one character.
  3017.  
  3018.  (The EEPIC, Imagen, LaTeX, and TPIC drivers allow \\ in a string to specify
  3019.  a newline.)
  3020. 3 trange
  3021. ?set trange
  3022. ?show trange
  3023. ?trange
  3024.  The `set trange` command sets the parametric range used to compute
  3025.  x and y values when in parametric mode. If not in parametric mode
  3026.  (see `set parametric`) then this range is not used. This command
  3027.  does not affect x/y autoscaling or x/y ranges.
  3028.  
  3029.  This range may also be specified on the `plot` command line when
  3030.  in parametric mode.
  3031.  
  3032.  Syntax:
  3033.          set trange [{<tmin> : <tmax>}]
  3034.  
  3035.  where <tmin> and <tmax> terms are constants or expressions.
  3036.  
  3037.  Both the <tmin> and <tmax> terms are optional. Anything omitted will
  3038.  not be changed, so
  3039.          set trange [:10]
  3040.  changes tmax to 10 without affecting tmin.  See also `set urange` and
  3041.  `set parametric`.
  3042. 3 urange
  3043. ?set urange
  3044. ?show urange
  3045. ?urange
  3046.  The `set urange` and `set vrange` commands sets the parametric ranges used
  3047.  to compute x, y, and z values when in `splot` parametric mode. If not in
  3048.  parametric mode (see `set parametric`) then these ranges are not used. This
  3049.  command does not affect x/y autoscaling or x/y ranges.
  3050.  
  3051.  This range may also be specified on the `splot` command line when
  3052.  in parametric mode.  See `plot` for more information
  3053.  
  3054.  Syntax:
  3055.          set urange [{<umin> : <umax>}]
  3056.  
  3057.  where <umin> and <umax> terms are constants or expressions.
  3058.  
  3059.  Both the <umin> and <umax> terms are optional. Anything omitted will
  3060.  not be changed, so
  3061.          set urange [:10]
  3062.  changes umax to 10 without affecting umin.  See also `set trange`.
  3063. 3 variables
  3064. ?show variables
  3065.  The `show variables` command lists all user-defined variables and
  3066.  their values.
  3067.  
  3068.  Syntax:
  3069.          show variables
  3070. 3 view
  3071. ?set view
  3072. ?show view
  3073. ?view
  3074.  The `set view` command sets the view point for `splot`s. This
  3075.  command controls the way the 3-d coordinates of the plot are mapped
  3076.  into the 2-d screen space. This command provides controls to both
  3077.  rotation and scaling of the plotted data but supports orthographic
  3078.  projections only.
  3079.  
  3080.  Syntax:
  3081.          set view <rot_x> {,{<rot_z>}{,{<scale>}{,<scale_z>}}}
  3082.          show view
  3083.  
  3084.  where <rot_x> and <rot_z> control the rotation angles (in degrees)
  3085.  along a virtual 3-d coordinate system aligned with the screen such
  3086.  that the screen horizontal axis is x, screen vertical axis is y, and
  3087.  the axis perpendicular to the screen is z. <rot_x> is bounded to the
  3088.  [0:180] range with a default of 60 degrees, while <rot_z> is bounded
  3089.  to the [0:360] range with a default of 30 degrees. <scale> controls
  3090.  the scaling of the entire `splot`, while <scale_z> scales the z axis
  3091.  only. Both scales default to 1.0.
  3092.  
  3093.  Examples:
  3094.          set view 60, 30, 1, 1
  3095.          set view ,,0.5
  3096.  
  3097.  The first sets all the four default values. The second changes
  3098.  only scale, to 0.5.
  3099.  
  3100.  See also `set ticslevel`.
  3101. 3 vrange
  3102. ?set vrange
  3103. ?show vrange
  3104. ?vrange
  3105.  The `set vrange` command is similar to the `set urange` command.
  3106.  Please see `set urange`.
  3107. 3 xlabel
  3108. ?set xlabel
  3109. ?show xlabel
  3110. ?xlabel
  3111.  The `set xlabel` command sets the x-axis label that is centered along
  3112.  the x axis. Using the optional x,y screen offsets, the label can be
  3113.  placed anywhere on the plot. `set xlabel` with no parameters clears
  3114.  the label.
  3115.  
  3116.  Syntax:
  3117.           set xlabel {"<label>"} {<xoff>}{,<yoff>}
  3118.           show xlabel
  3119.  
  3120.  Specifying constants <xoff> or <yoff> as optional offsets for the
  3121.  label will move the label <xoff> or <yoff> character screen
  3122.  coordinates. For example,
  3123.  
  3124.           set xlabel -1
  3125.  
  3126.  will change only the x offset of the xlabel, moving the label roughly
  3127.  one character width to the left.
  3128.  
  3129.  (The EEPIC, Imagen, LaTeX, and TPIC drivers allow \\ in a string to specify
  3130.  a newline.)
  3131. 3 xrange
  3132. ?set xrange
  3133. ?show xrange
  3134. ?xrange
  3135.  The `set xrange` command sets the horizontal range that will be
  3136.  displayed. This command turns x axis autoscaling off.
  3137.  
  3138.  This range may also be specified on the `plot` command line.
  3139.  
  3140.  Syntax:
  3141.          set xrange [{<xmin> : <xmax>}]
  3142.  
  3143.  where <xmin> and <xmax> terms are constants or expressions.
  3144.  
  3145.  Both the <xmin> and <xmax> terms are optional. Anything omitted will
  3146.  not be changed, so
  3147.          set xrange [:10]
  3148.  changes xmax to 10 without affecting xmin.
  3149. 3 xtics
  3150. ?set xtics
  3151. ?set noxtics
  3152. ?show xtics
  3153. ?xtics
  3154. ?noxtics
  3155.  Fine control of the x axis tic marks is possible with the
  3156.  `set xtics` command. The x-axis tic marks may be turned off with the
  3157.  `set noxtics` command. They may be turned on (the default state) with
  3158.  `set xtics`.
  3159.  
  3160.  Syntax:
  3161.           set xtics { {<start>, <incr>{, <end>}} |
  3162.                       {({"<label>"} <pos> {, {"<label>"} <pos>}...)} }
  3163.           set noxtics
  3164.           show xtics
  3165.  
  3166.  The <start>, <incr>, <end> form specifies that a series of tics will
  3167.  be plotted on the x axis between the x values <start> and <end>
  3168.  with an increment of <incr>. If <end> is not given it is assumed to be
  3169.  infinity. The increment may be negative. For example,
  3170.            set xtics 0,.5,10
  3171.  makes tics at 0, 0.5, 1, 1.5, ..., 9.5, 10.
  3172.  
  3173.  The ("<label>" <pos>, ...) form allows arbitrary tic positions or
  3174.  non-numeric tic labels. A set of tics are a set of positions, each
  3175.  with its own optional label. Note that the label is a string enclosed
  3176.  by quotes, and may be a constant string, such as "hello", or contain
  3177.  formatting information for the tic number (which is the same as the
  3178.  position), such as "%3f clients". See `set format` for more
  3179.  information about this case. The label may even be empty.
  3180.  Examples:
  3181.           set xtics ("low" 0, "medium" 50, "high" 100)
  3182.           set xtics (1,2,4,8,16,32,64,128,256,512,1024)
  3183.           set xtics ("bottom" 0, "" 10, "top" 20)
  3184.  
  3185.  Tics will only be plotted when in range.
  3186.  
  3187.  The `set ytics` and `set noytics` commands work identically.
  3188.  See also the `set format` command.
  3189. 3 xdtics
  3190. ?set xdtics
  3191. ?set noxdtics
  3192. ?show xdtics
  3193. ?xdtics
  3194. ?noxdtics
  3195.  The `set xdtics` commands converts the x axis tic marks to days of
  3196.  the week where 0=Sun and 6=Sat.  Overflows are converted modulo 7
  3197.  to dates.
  3198.  
  3199.  Examples:
  3200.         set xdtics
  3201.  
  3202.  Sets x axis tics in days.
  3203.  
  3204.  The `set ydtics` `set zdtics` and `set noydtics` `set nozdtics` commands
  3205.  work identically.
  3206.  See also the `set format` command.
  3207.  
  3208. 3 xmtics
  3209. ?set xmtics
  3210. ?set noxmtics
  3211. ?show xmtics
  3212. ?xmtics
  3213. ?noxmtics
  3214.  The `set xmtics` commands converts the x axis tic marks to months of
  3215.  the years where 1=Jan and 12=Dec.  Overflows are converted modulo 12
  3216.  to months.
  3217.  
  3218.  Examples:
  3219.         set xmtics
  3220.  
  3221.  Sets x axis tics into months.
  3222.  
  3223.  The `set ymtics` `set zmtics` and `set noymtics` `set nozmtics` commands
  3224.  work identically.
  3225.  See also the `set format` command.
  3226.  
  3227. 3 xzeroaxis
  3228. ?set xzeroaxis
  3229. ?set noxzeroaxis
  3230. ?show xzeroaxis
  3231. ?xzeroaxis
  3232. ?noxzeroaxis
  3233.  `set xzeroaxis` draws the x-axis. By default, this option is on.
  3234.  `set noxzeroaxis` causes GNUPLOT to omit the x-axis.
  3235.  
  3236.  Syntax:
  3237.          set xzeroaxis
  3238.          set noxzeroaxis
  3239.          show xzeroaxis
  3240. 3 ylabel
  3241. ?set ylabel
  3242. ?show ylabel
  3243. ?ylabel
  3244.  The `set ylabel` command sets the y-axis label.  The position of this
  3245.  label depends on the terminal, and can be one of the following three
  3246.  positions (the position can be adjusted with optional parameters).
  3247.  
  3248.  1. Horizontal text flushed left at the top left of the plot.
  3249.  Terminals that cannot rotate text will probably use this method.
  3250.  
  3251.  2. Vertical text centered vertically at the left of the plot.
  3252.  Terminals that can rotate text will probably use this method.
  3253.  
  3254.  3. Horizontal text centered vertically at the left of the plot.
  3255.  The EEPIC, LaTeX and TPIC drivers use this method. The user must insert
  3256.  line breaks using \\ to prevent the ylabel from overwriting
  3257.  the plot. To produce a vertical row of characters, add \\
  3258.  between every printing character (but this is ugly).
  3259.  
  3260.  Syntax:
  3261.           set ylabel {"<label>"} {<xoff>}{,<yoff>}
  3262.           show ylabel
  3263.  
  3264.  With no parameters, the label is cleared. Specifying constants <xoff>
  3265.  or <yoff> as optional offsets for the label will move the label <xoff>
  3266.  or <yoff> character screen coordinates. For example,
  3267.  
  3268.           set ylabel -1
  3269.  
  3270.  will change only the x offset of the ylabel, moving the label roughly
  3271.  one character width left of its default position. This is especially
  3272.  useful with the LaTeX driver.
  3273.  
  3274.  (The EEPIC, Imagen, LaTeX, and TPIC drivers allow \\ in a string to specify
  3275.  a newline.)
  3276. 3 yrange
  3277. ?set yrange
  3278. ?show yrange
  3279. ?yrange
  3280.  The `set yrange` command sets the vertical range that will be
  3281.  displayed. This command turns y axis autoscaling off.
  3282.  
  3283.  This range may also be specified on the `plot` command line.
  3284.  
  3285.  Syntax:
  3286.          set yrange [{<ymin> : <ymax>}]
  3287.  
  3288.  where <ymin> and <ymax> terms are constants or expressions.
  3289.  
  3290.  Both the <ymin> and <ymax> terms are optional. Anything omitted will
  3291.  not be changed, so
  3292.          set yrange [:10]
  3293.  changes ymax to 10 without affecting ymin.
  3294. 3 ytics
  3295. ?set ytics
  3296. ?set noytics
  3297. ?show ytics
  3298. ?ytics
  3299. ?noytics
  3300.  The `set ytics` and `set noytics` commands are similar to the `set xtics`
  3301.  and `set noxtics` commands. Please see `set xtics`.
  3302. 3 ydtics
  3303. ?set ydtics
  3304. ?set noydtics
  3305. ?show ydtics
  3306. ?ydtics
  3307. ?noydtics
  3308.  The `set ydtics` and `set noydtics` commands are similar to the `set xdtics`
  3309.  and `set noxdtics` commands. Please see `set xdtics`.
  3310. 3 ymtics
  3311. ?set ymtics
  3312. ?set noymtics
  3313. ?show ymtics
  3314. ?ymtics
  3315. ?noymtics
  3316.  The `set ymtics` and `set noymtics` commands are similar to the `set xmtics`
  3317.  and `set noxmtics` commands. Please see `set xmtics`.
  3318. 3 yzeroaxis
  3319. ?set yzeroaxis
  3320. ?set noyzeroaxis
  3321. ?show yzeroaxis
  3322. ?yzeroaxis
  3323. ?noyzeroaxis
  3324.  `set yzeroaxis` draws the y-axis. By default, this option is on.
  3325.  `set noyzeroaxis` causes GNUPLOT to omit the y-axis.
  3326.  
  3327.  Syntax:
  3328.          set yzeroaxis
  3329.          set noyzeroaxis
  3330.          show yzeroaxis
  3331. 3 zero
  3332. ?set zero
  3333. ?show zero
  3334. ?zero
  3335.  The `zero` value is the default threshold for values approaching 0.0.
  3336.  GNUPLOT will not plot a point if its imaginary part is greater in
  3337.  magnitude than the `zero` threshold. Axis ranges cannot be less than
  3338.  `zero`. The default `zero` value is 1e-8. This can be changed with
  3339.  the `set zero` command.
  3340.  
  3341.  Syntax:
  3342.          set zero <expression>
  3343.          show zero
  3344. 3 zeroaxis
  3345. ?set zeroaxis
  3346. ?set nozeroaxis
  3347. ?show zeroaxis
  3348. ?zeroaxis
  3349. ?nozeroaxis
  3350.  `set zeroaxis` draws the x-axis and y-axis. By default, this option is
  3351.  on.  `set nozeroaxis` causes GNUPLOT to omit the axes, and is
  3352.  equivalent to `set noxzeroaxis; set noyzeroaxis.`
  3353.  
  3354.  Syntax:
  3355.          set zeroaxis
  3356.          set nozeroaxis
  3357.          show zeroaxis
  3358.  See `set xzeroaxis` and `set yzeroaxis`.
  3359. 3 zlabel
  3360. ?set zlabel
  3361. ?show zlabel
  3362. ?zlabel
  3363.  The `set zlabel` command sets the z-axis label that is centered along
  3364.  the z axis. Using the optional x,y screen offsets, the label can be
  3365.  placed anywhere on the plot. `set zlabel` with no parameters clears
  3366.  the label.
  3367.  
  3368.  Syntax:
  3369.           set zlabel {"<label>"} {<xoff>}{,<yoff>}
  3370.           show zlabel
  3371.  
  3372.  Specifying constants <xoff> or <yoff> as optional offsets for the
  3373.  label will move the label <xoff> or <yoff> character screen
  3374.  coordinates. For example,
  3375.  
  3376.           set zlabel ,1
  3377.  
  3378.  will change only the y offset of the zlabel, moving the label roughly
  3379.  one character height up.
  3380.  
  3381.  The zlabel will be drawn whenever surfaces or contours are plotted,
  3382.  in the space above the grid level.
  3383.  
  3384.  (The EEPIC, Imagen, LaTeX, and TPIC drivers allow \\ in a string to specify
  3385.  a newline.)
  3386. 3 zrange
  3387. ?set zrange
  3388. ?show zrange
  3389. ?zrange
  3390.  The `set zrange` command sets the vertical range that will be
  3391.  displayed. This command turns z axis autoscaling off.  The zrange is
  3392.  used only by `splot` and is ignored by `plot`.
  3393.  
  3394.  This range may also be specified on the `splot` command line.
  3395.  
  3396.  Syntax:
  3397.          set zrange [{<zmin> : <zmax>}]
  3398.  
  3399.  where <zmin> and <zmax> terms are constants or expressions.
  3400.  
  3401.  Both the <zmin> and <zmax> terms are optional. Anything omitted will
  3402.  not be changed, so
  3403.          set zrange [2:]
  3404.  changes zmin to 2 without affecting zmax.
  3405. 3 ztics
  3406. ?set ztics
  3407. ?set noztics
  3408. ?show ztics
  3409. ?ztics
  3410. ?noztics
  3411.  The `set ztics` and `set noztics` commands are similar to the
  3412.  `set xtics` and `set noxtics` commands. Please see `set xtics`.
  3413. 3 zdtics
  3414. ?set zdtics
  3415. ?set nozdtics
  3416. ?show zdtics
  3417. ?zdtics
  3418. ?nozdtics
  3419.  The `set zdtics` and `set nozdtics` commands are similar to the
  3420.  `set xdtics` and `set noxdtics` commands. Please see `set xdtics`.
  3421.  
  3422. 3 zmtics
  3423. ?set zmtics
  3424. ?set nozmtics
  3425. ?show zmtics
  3426. ?zmtics
  3427. ?nozmtics
  3428.  The `set zmtics` and `set nozmtics` commands are similar to the
  3429.  `set xmtics` and `set noxmtics` commands. Please see `set xmtics`.
  3430. 2 shell
  3431. ?shell
  3432.  The `shell` command spawns an interactive shell. To return to
  3433.  GNUPLOT, type `logout` if using VMS, `exit` or the END-OF-FILE
  3434.  character if using Unix, `endcli` if using AmigaDOS, or `exit` if
  3435.  using MS-DOS or OS/2.
  3436.  
  3437.  A single shell command may be spawned by preceding it with the !
  3438.  character ($ if using VMS) at the beginning of a command line.
  3439.  Control will return immediately to GNUPLOT after this command is
  3440.  executed. For example, in VMS, AmigaDOS, MS-DOS or OS/2,
  3441.  
  3442.       ! dir
  3443.  
  3444.  prints a directory listing and then returns to GNUPLOT.
  3445.  
  3446.  On an Atari, the `!` command first checks whether a shell is already
  3447.  loaded and uses it, if available. This is practical if GNUPLOT is run
  3448.  from `gulam`, for example.
  3449. 2 splot
  3450. ?splot
  3451. ?surface plot
  3452.  Three-dimensional surface and contour plotting is available in
  3453.  GNUPLOT with the `splot` command. See the `plot` command for features
  3454.  common to the `plot` command.
  3455.  
  3456.  See also `set contour`, `set cntrparam`, and `set surface`.
  3457.  
  3458. 3 Binary Data
  3459. ?binary-data
  3460. ?binary files
  3461.  Gnuplot will dynamically determine if a datafile is ASCII or
  3462.  binary.  ASCII data files are discussed in the `plot` section.
  3463.  For three dimensions, single precision floats are stored as follows:
  3464.  
  3465.        <ncols> <x0> <x1> <x2> ...
  3466.        <y0> <z0,0> <z0,1> <z0,2> ...
  3467.        <y1> <z1,0> <z1,1> <z1,2> ...
  3468.  
  3469.  which is converted into triplet:
  3470.  
  3471.        <x0> <y0> <z0,0>
  3472.        <x0> <y1> <z0,1>
  3473.        <x0> <y2> <z0,2>
  3474.  
  3475.        <x1> <y0> <z1,0>
  3476.        <x1> <y1> <z1,1>
  3477.        <x1> <y2> <z1,2>
  3478.  
  3479.  These triplets are then converted into gnuplot iso_curves and then
  3480.  uses gnuplot to do the rest of the plotting.
  3481.  
  3482.  A collection of matrix and vector manipulation routines (in C) are
  3483.  provided in `gnubin.c`.  The routine to write binary data is
  3484.  
  3485.   int fwrite_matrix(file,m,nrl,nrl,ncl,nch,row_title,column_title)
  3486.  
  3487.  An example of using these routines is provided in the file `bf_test.c`.
  3488.  The corresponding demo file is `demo/binary.dem`.
  3489. 2 start-up
  3490. ?startup
  3491. ?start
  3492. ?.gnuplot
  3493.  When GNUPLOT is run, it looks for an initialization file to load.
  3494.  This file is called `.gnuplot` on Unix and AmigaDOS systems, and
  3495.  `GNUPLOT.INI` on other systems. If this file is not found in the
  3496.  current directory, the program will look for it in the home directory
  3497.  (under AmigaDOS, AtariTOS, MS-DOS and OS/2, the environment variable
  3498.  GNUPLOT should contain the name of this directory).  Note: if NOCWDRC
  3499.  is defined during the installation, GNUPLOT will not read from the
  3500.  current directory.
  3501.  
  3502.  If this file is found, GNUPLOT executes the commands in this file.
  3503.  This is most useful for setting the terminal type and defining any
  3504.  functions or variables that are used often.
  3505. 2 substitution
  3506. ?substitution
  3507.  Command-line substitution is specified by a system command enclosed in
  3508.  backquotes. This command is spawned and the output it produces
  3509.  replaces the name of the command (and backquotes) on the command line.
  3510.  
  3511.  Newlines in the output produced by the spawned command are replaced
  3512.  with blanks.
  3513.  
  3514.  Command-line substitution can be used anywhere on the GNUPLOT command
  3515.  line.
  3516.  
  3517.  Example:
  3518.  
  3519.  This will run the program `leastsq` and replace `leastsq` (including
  3520.  backquotes) on the command line with its output:
  3521.  
  3522.           f(x) = `leastsq`
  3523.  
  3524.  or, in VMS
  3525.  
  3526.           f(x) = `run leastsq`
  3527. 2 user-defined
  3528. ?userdefined
  3529. ?variables
  3530.  New user-defined variables and functions of one through five variables may
  3531.  be declared and used anywhere.
  3532.  
  3533.  User-defined function syntax:
  3534.          <function-name> ( <dummy1> {,<dummy2> {, ...} } ) = <expression>
  3535.  
  3536.  where <expression> is defined in terms of <dummy1> through <dummy5>.
  3537.  
  3538.  User-defined variable syntax:
  3539.          <variable-name> = <constant-expression>
  3540.  
  3541.  Examples:
  3542.          w = 2
  3543.          q = floor(tan(pi/2 - 0.1))
  3544.          f(x) = sin(w*x)
  3545.          sinc(x) = sin(pi*x)/(pi*x)
  3546.          delta(t) = (t == 0)
  3547.          ramp(t) = (t > 0) ? t : 0
  3548.          min(a,b) = (a < b) ? a : b
  3549.          comb(n,k) = n!/(k!*(n-k)!)
  3550.          len3d(x,y,z) = sqrt(x*x+y*y+z*z)
  3551.  
  3552.  Note that the variable `pi` is already defined.
  3553.  
  3554.  See `show functions` and `show variables`.
  3555. 2 bugs
  3556. ?bugs
  3557.  The bessel functions do not work for complex arguments.
  3558.  
  3559.  The gamma function does not work for complex arguments.
  3560.  
  3561.  There is a bug in the stdio library for old Sun operating systems
  3562.  (SunOS Sys4-3.2). The "%g" format for 'printf' sometimes incorrectly
  3563.  prints numbers (e.g., 200000.0 as "2"). Thus, tic mark labels may be
  3564.  incorrect on a Sun4 version of GNUPLOT. A work-around is to rescale
  3565.  the data or use the `set format` command to change the tic mark format
  3566.  to "%7.0f" or some other appropriate format. This appears to have been
  3567.  fixed in SunOS 4.0.
  3568.  
  3569.  Another bug: On a Sun3 under SunOS 4.0, and on Sun4's under Sys4-3.2
  3570.  and SunOS 4.0, the 'sscanf' routine incorrectly parses "00 12" with
  3571.  the format "%f %f" and reads 0 and 0 instead of 0 and 12. This
  3572.  affects data input. If the data file contains x coordinates that are
  3573.  zero but are specified like '00', '000', etc, then you will read the
  3574.  wrong y values. Check any data files or upgrade the SunOS.
  3575.  It appears to have been fixed in SunOS 4.1.1.
  3576.  
  3577.  Microsoft C 5.1 has a nasty bug associated with the %g format for
  3578.  printf. When any of the formats "%.2g", "%.1g", "%.0g", "%.g" are
  3579.  used, printf will incorrectly print numbers in the range 1e-4 to 1e-1.
  3580.  Numbers that should be printed in the %e format are incorrectly
  3581.  printed in the %f format, with the wrong number of zeros after the
  3582.  decimal point.
  3583.  
  3584.  To work around this problem, use the %e or %f formats explicitly.
  3585.  
  3586.  GNUPLOT, when compiled with Microsoft C, did not work correctly on two
  3587.  VGA displays that were tested. The CGA, EGA and VGA drivers should
  3588.  probably be rewritten to use the Microsoft C graphics library.
  3589.  GNUPLOT compiled with Borland C++ uses the Turbo C graphics drivers and
  3590.  does work correctly with VGA displays.
  3591.  
  3592.  VAX/VMS 4.7 C compiler release 2.4 also has a poorly implemented %g
  3593.  format for printf. The numbers are printed numerically correct, but
  3594.  may not be in the requested format. The K&R second edition says that
  3595.  for the %g format, %e is used if the exponent is less than -4 or greater
  3596.  than or equal to the precision. The VAX uses %e format if the exponent
  3597.  is less than -1. The VAX appears to take no notice of the precision
  3598.  when deciding whether to use %e or %f for numbers less than 1.
  3599.  To work around this problem, use the %e or %f formats explicitly.
  3600.  From the VAX C 2.4 release notes:
  3601.  e,E,f,F,g,G  Result will always contain a decimal  point.
  3602.  For g and G, trailing zeros will not be removed from the result.
  3603.  
  3604.  VAX/VMS 5.2 C compiler release 3.0 has a slightly better implemented
  3605.  %g format than release 2.4, but not much. Trailing decimal points are
  3606.  now removed, but trailing zeros are still not removed from %g numbers
  3607.  in exponential format.
  3608.  
  3609.  ULTRIX X11R3 has a bug that causes the X11 driver to display "every
  3610.  other" plot.  The bug seems to be fixed in DEC's release of X11R4 so
  3611.  newer releases of ULTRIX don't seem to have the problem.  Solutions for
  3612.  older sites include upgrading the X11 libraries (from DEC or direct from
  3613.  MIT) or defining ULTRIX_KLUDGE when compiling the x11.trm file.  Note
  3614.  that the kludge is not an ideal fix, however.
  3615.  
  3616.  The constant HUGE was incorrectly defined in the NeXT OS 2.0 operating
  3617.  system.  HUGE should be set to 1e38 in plot.h. This error has been
  3618.  corrected in the 2.1 version of NeXT OS.
  3619.  
  3620.  Some older models of HP plotters do not have a page eject command 'PG'.
  3621.  The current HPGL driver uses this command in HPGL_reset.  This may need
  3622.  to be removed for these plotters.  The current PCL5 driver uses HPGL/2
  3623.  for text as well as graphics.  This should be modified to use scalable
  3624.  PCL fonts.
  3625.  
  3626.  On the Atari version, it is not possible to send output directly to
  3627.  the printer (using `/dev/lp` as output file), since CRs are added to LFs in
  3628.  binary output. As a workaround write the output to a file and copy it to
  3629.  the printer afterwards using a shell command.
  3630.  
  3631.  Please report any bugs to bug-gnuplot@dartmouth.edu.
  3632.